Ich möchte gerne eine Liste mit inneren Listen in eine neue Liste kopieren (Simulation eines streams).
An die letzte innere Liste soll immer ein Wert angehängt werden.
Ich lass also die Quell-Liste mit einer for-Schleife durchlaufen und hänge die inneren Listen an die Ziel-Liste an (erste .append).
An die so entstehende letzte Liste hänge ich immer einen Wert (99) an.
Das Problem:
Wieso wird die 99 auch der Quell-Liste hinzugefügt?
Das ist so als wenn ich dem Läufer aus der for-Schleife eine Zahl anhänge (x.append(99))
Code: Alles auswählen
quelle = [[1,5],[2,5],[3,5]] #Vorgaben-Liste
ziel = [] #Datenliste zum Speichern der Daten aus der Vorgabenliste
for innere_liste in quelle:
ziel.append(innere_liste) #Element "speichern"
ziel[len(ziel)-1].append(99) ##innere data-Liste erweitern
# innere_liste.append(99)
print("quelle: ", quelle)
print("ziel : ", ziel)
Code: Alles auswählen
Ausgabe
quelle: [[1, 5, 99], [2, 5], [3, 5]]
ziel : [[1, 5, 99]]
quelle: [[1, 5, 99], [2, 5, 99], [3, 5]]
ziel : [[1, 5, 99], [2, 5, 99]]
quelle: [[1, 5, 99], [2, 5, 99], [3, 5, 99]]
ziel : [[1, 5, 99], [2, 5, 99], [3, 5, 99]]