は、次のコードを考えてみます。異なる挙動は.__ iadd__とリスト.__ add__
>>> x = y = [1, 2, 3, 4]
>>> x = x + [4]
>>> x
[1, 2, 3, 4, 4]
>>> y
[1, 2, 3, 4]
なぜ差がこれらの二つがあります:その後、
>>> x = y = [1, 2, 3, 4]
>>> x += [4]
>>> x
[1, 2, 3, 4, 4]
>>> y
[1, 2, 3, 4, 4]
とは、この考えますか?
(はい、これを検索しました)。示されているように__add__
は、新しいリストを返し、一方
あなたの最後の声明について興味深いのは、この機能が実際にpythonのドキュメントで説明されているということです:http://docs.python.org/reference/datamodel.html#object.__add__(これらの用語の検索から) – jdi
@ jdl:はい、私はそれを見落としたことを認めます。 –