2017-10-25 11 views
0

ルック値の両方:ここ変数の変更に値を追加はするコードで

a = ['Hello'] 
b = a   # ['Hello'] 

b.append(2) 
print b  # ['Hello', 2] 
print a  # ['Hello', 2] 

を、Aは中値の変化は、bの値に影響を与えることができることを意味し、Bに割り当てられています。この場合、bの変化はどのようにaに影響しますか?

PythonのListには、値を追加するとaとbの両方に影響する特別なルールがありますか?

+0

参考資料は特にありません。 –

+0

https://stackoverflow.com/questions/8056130/immutable-vs-mutable-types – itzMEonTV

+0

いいえ、**すべてのpythonオブジェクトはこのように動作します**。 Ned Batchelderの[pythonの名前と値に関する事実と誤解](https://nedbatchelder.com/text/names.html) –

答えて

0

これはまったく同じ値なので、名前は参照にバインドされています。つまり、b = aは両方とも同じリストを指しています。

関連する問題