今日追加されたPythonリストではかなり奇妙な問題が発生しました。私は各要素がC struct
のような配列を作成しようとしていました。これらの要素の1つは、単独でリストでした。私が期待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)
出力である:これは、問題のコードで私はチームのためsquad
にメンバーを追加するので
abc
['Joe']
xyz
[]
[0]。しかし、私が手出力は次のようになります。
abc
['Joe']
xyz
['Joe']
名前は細かい設定されているが、.append
はteams
の両方の要素にそれを追加します!
この原因は何ですか?これを回避するにはどうすればよいですか。
ありがとうございます!これは問題を解決します! –