例を見てみましょう
a=['help', 'copyright', 'credits', 'license']
b=a
b.append('XYZ')
b
['help', 'copyright', 'credits', 'license', 'XYZ']
a
['help', 'copyright', 'credits', 'license', 'XYZ']
リスト 'b' に値を追加したかったのですが、リスト 'a' の値も変更されています。
なぜこのようになるのかよくわかりません (Python はリストを参照で渡します)。
私の質問は、「'b' を追加しても 'a' の値が変更されないように、値で渡すにはどうすればよいか」ということです。
ベストアンサー1
Pythonでは値を渡すことはできません。 のコピーを作成したい場合はa
、公式 Python FAQ:
b = a[:]