Ich habe zwei Liste, die ich zu einer einzigen Liste zusammenfassen. Später möchte ich eine Kopie dieser Liste machen, damit ich diese zweite Liste manipulieren kann, ohne meine erste Liste zu beeinflussen. Mein Verständnis ist, wenn Sie dies verwenden [:] sollte die Verknüpfung der Liste aufheben und eine zweite Kopie der Liste in einem unabhängigen Speicherort erstellen. Mein Problem ist, dass ich die Arbeit für dieses Szenario nicht sehe. Ich habe auch versucht, list-Befehl zu verwenden, aber das Ergebnis war das gleiche.Python Liste der Liste Verknüpfung des Objekts
a = ['a','b','c']
b = ['1','2','3']
c = [a[:],b[:]] # list of list
d = c[:] # want to create copy of the list of list so I can remove last item
for item in d:
del item[-1]
# this is what I am getting returned.
In [286]: c
Out[286]:
[['a', 'b'], ['1', '2']]
In [287]: d
Out[287]:
[['a', 'b'], ['1', '2']]
Wollen Sie es '[1, 2], [3, 4]' auf '[1, 2, 3, 4]' oder 'konvertieren [[1, 2], [3, 4]] ' –
Mögliches Duplikat von [Tiefe eine Liste in Python kopieren] (http://stackoverflow.com/questions/17873384/deep-copy-a-list-in-python) –
eigentlich war meine Hoffnung, 3 Elemente in Liste c zu haben und nur 2 Elemente in Liste d – bytes1234