整数変数x
を値0
と宣言しました。python: 'int'オブジェクトに属性 '__iadd__'がありません
>>> x = 0
は、私はこの行を実行すると:
>>> x += 3
>>> x
3
すべてがうまくいきます。私はこの行を実行するときしかし:
>>> x.__iadd__(3)
Pythonは例外が発生します:
operator
モジュールの
official python documentationに
+=
オペレータが
__iadd__
メソッドを呼び出すと述べながら、Pythonはこの例外をスローするのはなぜ
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'int' object has no attribute '__iadd__'
? operator
モジュール用公式Pythonドキュメントで
'__iadd__'が定義されていない場合、' x + = y'は 'x = x + y'に戻ります。 https://docs.python.org/3/reference/datamodel.html#object.__iadd__をご覧ください。 – jonrsharpe