4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【プログラミング入門者へ届け】「=」は「代入」である

Last updated at Posted at 2025-04-27

新年度が始まって約1ヶ月。新しい生活の中で、プログラミングを始めた方もちらほら見かけますね。これから長期連休に入る時期ですので、プログラミングに苦戦している方は、この機会に基本を押さえてみてはいかがでしょうか。

今回はプログラミングにおける=は、代入であるという話しです。

算数や数学の話で出てくる=(等しい)とは意味合いが違うということです。これがプログラミング入門者が困惑する理由かと思われます。(同じ記号なのに意味合いが違うだと、、、)

本記事の結論はこうです。

要はa = a + 1が出てきても困惑しないでね!ということになります。

動作を確認してみよう

動作確認はPythonで行います。

In
a = 5
print(a)

a = a + 1
print(a)
Out
5
6

新しい値が代入されると、古い値は消え去ってしまいます。

実際はどうなっているのか

Pythonでは、値はすべてオブジェクトで、オブジェクトは識別値を持っています。

そして変数は、オブジェクトがどこにあるかを保持しています。

In
# aは5の場所を保持する
a = 5
print(id(a))
print(a)

# aは6の場所を保持する
a = a + 1
print(id(a))
print(a)
Out
10750984
5
10751016
6

余談

Pythonでオブジェクトの値が等しいかどうかを調べるときは==を使用します。

In
a = []
b = []

print(a == b)
Out
True

isを使うとオブジェクトの識別値が等しいかどうかを調べることができます。

In
a = []
b = []

print(a is b)

print(id(a))
print(id(b))
Out
False
131949168802496
131949168801856

おわり

最後までお読みいただきありがとうございました。
少しややこしい話もしましたが、とにかく数学の話で出てくる=とは意味合いが違うぞ!というところを意識していただければ良いかと思います。

「図解で学べる」を意識して書籍を書いています。
こっちも良かったらチェックしてね!

4
2
6

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?