151

+=Pythonで何ができるかを知る必要があります。とても簡単です。Pythonの他の速記ツールの定義へのリンクもいただければ幸いです。

4

15 に答える 15

173

Python では、特殊なメソッド+=のシュガー コーティング、または存在しない場合のorです。クラスのメソッドは、必要なことを何でも実行できます。リスト オブジェクトはそれを実装し、それを使用して反復可能なオブジェクトを反復処理し、リストの extends メソッドと同じ方法で各要素をそれ自体に追加します。__iadd____add____radd____iadd____iadd__

__iadd__特別なメソッドを実装する単純なカスタム クラスを次に示します。オブジェクトを int で初期化してから、+=演算子を使用して数値を追加できます。呼び出されることを示すために、print ステートメントを追加しました__iadd__。また、__iadd__はオブジェクトを返すことが期待されているため、この場合は意味のあるそれ自身と他の数値の加算を返しました。

>>> class Adder(object):
        def __init__(self, num=0):
            self.num = num

        def __iadd__(self, other):
            print 'in __iadd__', other
            self.num = self.num + other
            return self.num
    
>>> a = Adder(2)
>>> a += 3
in __iadd__ 3
>>> a
5

お役に立てれば。

于 2011-01-30T20:31:48.120 に答える
159

+=変数の値に別の値を追加し、新しい値を変数に割り当てます。

>>> x = 3
>>> x += 2
>>> print x
5

-=、、は*=/=減算、乗算、除算についても同様です。

于 2011-01-30T06:02:28.240 に答える
33

+=変数に数値を追加し、プロセスで変数自体を変更します(ただし、変更し+ません)。これと同様に、変数を変更する次のものがあります。

  • -=、変数から値を減算し、変数を結果に設定します
  • *=、変数と値を乗算し、結果を変数にします
  • /=、変数を値で除算し、結果を変数にします
  • %=、変数に対してモジュラスを実行し、変数はその結果に設定されます

他にもあるかもしれません。私はPythonプログラマーではありません。

于 2011-01-30T06:05:29.487 に答える
16

右のオペランドを左に追加します。 x += 2意味x = x + 2

リストに要素を追加することもできます-このSOスレッドを参照してください。

于 2011-01-30T06:03:06.493 に答える
0

他の人も言ったように、 += 演算子はショートカットです。例:

var = 1;
var = var + 1;
#var = 2

次のように書くこともできます。

var = 1;
var += 1;
#var = 2

したがって、最初の例を書く代わりに、2 番目の例を書くだけで問題なく動作します。

于 2015-08-17T20:41:35.693 に答える