4行目で、なぜ「-」の後に「=」を追加する必要があるのですか?
num = 5
if num > 2:
print(num)
num -= 1
print(num)
num - 1
: から 1 を引いた結果を生成しnum
ます。num
変更されていません
num -= 1
: から 1 を引いて、その結果を格納します ( when is a number とnum
同等)num = num - 1
num
、または などの結果を生成するため、式num - 1
として使用できますが、Python では式として使用できないことに注意してください。foo = num - 1
print(num - 1)
num -= 1
num -= 1
と同じです
num = num - 1
は=
、減算の結果を に代入するために必要ですnum
。
以下:
num -= 1
から 1 を減算しnum
、結果を に代入しnum
ます。
一方で、次のようになります。
num - 1
から 1 を減算しnum
、結果を破棄します。
becausenum - 1
は何もしませんがnum -= 1
、 の値をnum
マイナス 1 だけ変更します。
あなたは本質的に違いを求めています
num - 1
と
num -= 1
前者は に評価される式ですnum - 1
。後者は に割り当てる代入num - 1
ですnum
。
したがって、前者は を変更しませんがnum
、後者は変更します。
これは、短いバージョンの書き込みです。
num = num - 1
プログラムを正しく実行するために何かをする必要がない限り、何もする必要はありません。いくつかのことは良い習慣ですが、何らかの方法で何かをしなければならないことを、コンパイラーと仕様以外の誰かまたは何かに納得させてはいけません。この場合、n -= 1
は とまったく同じn = n - 1
です。したがって、 を の-
前に置きたくない場合=
は、しないでください。n = n - 1
代わりに使用してください。
-=
オペレーターです。この演算子は減算と同じです。
num -= 1
手段は num = num - 1
右辺の与えられた値でそれ自体から減算するために使用されます。
the-=
は演算子であり、あなたが書いたものは を生成しnum = num - 1
ます。