複合代入演算子は代入演算子「=」と算術演算子「+」などを「+=」のように組み合わせて使用します。
複合代入演算子の種類と演算式
複合代入演算子を使用すると演算式を短く書くことができます。
複合代入 | 演算子 | 複合代入演算子の演算式 | 通常の演算式 |
---|---|---|---|
加算代入 | += | a += 3 | a = a + 3 |
減算代入 | -= | a -= 3 | a = a – 3 |
乗算代入 | *= | a *= 3 | a = a * 3 |
除算代入 | /= | a /= 3 | a = a / 3 |
除算代入 | //= | a //= 3 | a = a // 3 |
除算代入 | %= | a %= 3 | a = a % 3 |
累乗代入 | **= | a **= 3 | a = a ** 3 |
複合代入演算子を使用する際の注意点
変数には「a = 0」などのように、あらかじめ値を代入してから複合代入演算子を使用しないとエラーとなるので注意が必要です。
# 変数「a」に数値「0」を代入する
a = 0
# 変数「a」に数値「3」を加算代入する
a += 3
# 変数「a」を表示する
print(a)
プログラム(ソースコード)
次のソースコードは変数「a」を定義していないためエラーとなります。
a += 100
print(a)
プログラム(ソースコード)の保存先
- 保存先(venv仮想環境):C:\code\py310\venv\trial
- ファイル名:sample_code_009.py
- エンコード:UTF-8
コマンドプロンプトでPythonのプログラム(ソースコード)を実行
実行すると変数「a」が定義されていない(変数に値が代入されていない)ため「NameError」となります。最初の行に「a = 0」など、変数を定義(変数に値を代入)するとエラーを回避できます。
(trial) C:\code\py310\venv\trial>python sample_code_009.py
Traceback (most recent call last):
File "C:\code\py310\venv\trial\sample_code_009.py", line 1, in <module>
a += 100
NameError: name 'a' is not defined
(trial) C:\code\py310\venv\trial>
まとめ
- 複合代入演算子は代入演算子「=」と算術演算子「+」などを組み合わせて使う
- 複合演算子を使用すると演算式を短く書くことができる
- 複合代入演算子を使う前に変数を定義(変数に値を代入)する必要がある