Ich habe eine Liste mit ganzen Zahlen und habe mich gefragt, ob es möglich ist, einzelne ganze Zahlen in dieser Liste zu ergänzen.
In diesem Beispiel stammen die hinzuzufügenden Elemente aus einem Wörterbuch
>>> L = [0, 0, 0, 0]
>>> things_to_add = ({'idx':1, 'amount': 1}, {'idx': 2, 'amount': 1})
>>> for item in things_to_add:
... L[item['idx']] += item['amount']
...
>>> L
[0, 1, 1, 0]
Hier ist ein Beispiel zum Hinzufügen von Elementen aus einer anderen Liste
>>> L = [0, 0, 0, 0]
>>> things_to_add = [0, 1, 1, 0]
>>> for idx, amount in enumerate(things_to_add):
... L[idx] += amount
...
>>> L
[0, 1, 1, 0]
Sie können dies auch mit einem Listenverständnis und Zip erreichen
L[:] = [sum(i) for i in Zip(L, things_to_add)]
Hier ist ein Beispiel, das aus einer Liste von Tupeln hinzugefügt wird
>>> things_to_add = [(1, 1), (2, 1)]
>>> for idx, amount in things_to_add:
... L[idx] += amount
...
>>> L
[0, 1, 1, 0]
Sie können an das Ende einer Liste Folgendes anhängen:
foo = [1, 2, 3, 4, 5]
foo.append(4)
foo.append([8,7])
print(foo) # [1, 2, 3, 4, 5, 4, [8, 7]]
Sie können Elemente in der Liste folgendermaßen bearbeiten:
foo = [1, 2, 3, 4, 5]
foo[3] = foo[3] + 4
print(foo) # [1, 2, 3, 8, 5]
Fügen Sie ganze Zahlen in die Mitte einer Liste ein:
x = [2, 5, 10]
x.insert(2, 77)
print(x) # [2, 5, 77, 10]
fooList = [1,3,348,2]
fooList.append(3)
fooList.append(2734)
print(fooList) # [1,3,348,2,3,2734]
Wenn Sie versuchen, die Nummer wie zum Beispiel listName.append(4)
anzuhängen, wird der 4
zuletzt angehängt. Wenn Sie jedoch versuchen, <int>
zu nehmen und dann als num = 4
anzuhängen, gefolgt von listName.append(num)
, wird ein Fehler als 'num' is of <int> type
und listName is of type <list>
ausgegeben. Geben Sie also cast int(num)
ein, bevor Sie es anhängen.
Ja, es ist möglich, da Listen veränderbar sind.
Sehen Sie sich die eingebaute enumerate()
-Funktion an, um eine Vorstellung davon zu bekommen, wie Sie die Liste durchlaufen und den Index jedes Eintrags finden (den Sie dann verwenden können, um ihn einem bestimmten Listenelement zuzuordnen).