新年度が始まって約1ヶ月。新しい生活の中で、プログラミングを始めた方もちらほら見かけますね。これから長期連休に入る時期ですので、プログラミングに苦戦している方は、この機会に基本を押さえてみてはいかがでしょうか。
今回はプログラミングにおける=
は、代入であるという話しです。
算数や数学の話で出てくる=
(等しい)とは意味合いが違うということです。これがプログラミング入門者が困惑する理由かと思われます。(同じ記号なのに意味合いが違うだと、、、)
本記事の結論はこうです。

要はa = a + 1
が出てきても困惑しないでね!ということになります。
動作を確認してみよう
動作確認はPythonで行います。
a = 5
print(a)
a = a + 1
print(a)
5
6
新しい値が代入されると、古い値は消え去ってしまいます。
実際はどうなっているのか
Pythonでは、値はすべてオブジェクトで、オブジェクトは識別値を持っています。

そして変数は、オブジェクトがどこにあるかを保持しています。
# aは5の場所を保持する
a = 5
print(id(a))
print(a)
# aは6の場所を保持する
a = a + 1
print(id(a))
print(a)
10750984
5
10751016
6

余談
Pythonでオブジェクトの値が等しいかどうかを調べるときは==
を使用します。
a = []
b = []
print(a == b)
True
is
を使うとオブジェクトの識別値が等しいかどうかを調べることができます。
a = []
b = []
print(a is b)
print(id(a))
print(id(b))
False
131949168802496
131949168801856
おわり
最後までお読みいただきありがとうございました。
少しややこしい話もしましたが、とにかく数学の話で出てくる=
とは意味合いが違うぞ!というところを意識していただければ良いかと思います。
「図解で学べる」を意識して書籍を書いています。
こっちも良かったらチェックしてね!