所以我在Python中遇到了很奇怪的東西。我試着給自己添加一個對列表的引用。該代碼可能有助於證明我說的比我能表達的更好。我正在使用IDLE編輯器(交互模式)。對本身的列表遞歸引用
>>>l=[1,2,3]
>>>l.append(l)
>>>print(l)
[1,2,3,[...]]
>>>del l[:-1]
>>>print(l)
[[...]]
到目前爲止輸出如預期。但是當我這樣做。
y=l[:]
print(y)
對我來說,似乎輸出應該
[[...]]
但它是
[[[...]]]
顯然不是創建表的副本,它把一個參考列表y。
y [0]是l返回True。我似乎無法找到一個很好的解釋。有任何想法嗎?
你能否詳細說明一下?你失去了我在**「它開始打印y:[???] ..... ** – Guy
另外如果我真的想要一份清單的副本?我知道我可以在這種情況下對y做同樣的處理,但爲了討論的緣故,我有辦法做到這一點嗎? – Guy
@Sabyasachi:這樣更清楚嗎? – hivert