1
今天我遇到了python列表追加的奇怪問題。我試圖創建一個數組,其每個元素都像C struct
。其中一個元素本身就是一個列表。這是有問題的代碼:Python列表追加問題
class players:
name='placeholder'
squad=list()
teams=list()
teams.append(players())
teams.append(players())
teams[0].name="abc"
teams[1].name="xyz"
teams[0].squad.append("Joe")
for w in teams:
print(w.name)
print(w.squad)
我期望的輸出是:
abc
['Joe']
xyz
[]
由於我只加一個構件到squad
爲團隊[0]。但輸出我得到的是:
abc
['Joe']
xyz
['Joe']
名稱設置罰款,但.append
它附加到teams
兩個元素!
是什麼導致了這種情況,我該如何解決這個問題?
謝謝!這解決了問題! –