ロジカ式logo

はじめての
Python

ページ一覧に戻る
Lesson11-3 自己代入
ロボた

数値「3」と「5」と「7」の3つの数値があるとするよ。
一つの変数だけを使って、この3つの数値を順に足していって、総合計を計算するにはどうしたらいいと思う?

「3 + 5 + 7」って、計算するんじゃないよ!

ロボち
よくある間違い
ロボた

こんなふうに、順に数値を足していく計算をするときには、「自己代入」という方法を使うんだよ!

自己代入

演算のために用いた変数に、演算結果を再代入するから「自己代入」っていうんだ!

ロボち
ロボた

こんな順番で、計算されていくよ!

自己代入の計算方法

使い方の例

📝1
「自己代入」で、数値「1」と「2」と「3」の合計を計算してみました。

EXAMPLE
sum = 1 sum = sum + 2 sum = sum + 3 print("合計:", sum)

📝2
「0から50」までの数値の合計を、繰り返しを使って計算する例です。

ロボた

「自己代入」は、繰り返しと合わせたときに威力を発揮するんだよ!

そうそう!「1+2+3+4+5+6+7+8+.....」の合計も、簡単に計算できるんだよ!

ロボち
EXAMPLE
sum = 0 for i in range(51): sum = sum + i print("合計:", sum)
ロボた

どうして繰り返す回数は「51」なのか、考えてみてね!

繰り返しの中で、変数の値を表示させてみると、もっと理解できるよ!

ロボち

📝3
「自己代入」は、「足し算」だけでなく「引き算」「掛け算」「割り算」の計算もできます。

EXAMPLE
num = 3 num = num - 1 #変数numの値から1を引く print(num) num = num * 2 #変数numの値に2を掛ける print(num) num = num / 3 #変数numの値を3で割る print(num)

📝4
「自己代入」には、省略した書き方があります。

ロボた

省略した書き方のことを、「累算代入演算子」というよ!

「累算代入演算子」を使ったほうが、コードが短くてわかりやすくなるんだよ!

ロボち
自己代入省略した書き方累算代入演算子
A = A + BA += B+=
A = A - BA -= B-=
A = A * BA *= B*=
A = A / BA /= B/=
EXAMPLE
num = 5 num += 1 #変数numの値に1を足す print(num) num -= 2 #変数numの値から2を引く print(num) num *= 3 #変数numの値に3を掛ける print(num) num /= 4 #変数numの値を4で割る print(num)

やってみよう

⌨️1
「0から50」までの数値の合計を、「累算代入演算子」を使って計算してください。

PRACTICE

📖 解答例と解説

sum = 0
for i in range(51):
    sum += i
print("合計:", sum)
ロボた

「sum = sum + i」を省略した書き方は、「sum += i」だったね!

「+=」は、一番多く使う書き方だよ!

ロボち
POINT
  •   演算のために用いた変数に、演算結果を再代入することを「自己代入」という。
  •   「自己代入」を省略した書き方があり、「累算代入演算子」という。