プログラミングの用語一覧へ
このページの目次

変数とは?

読み方:へんすう

最終更新:2026/08/18

3秒でわかる

値に名前を付けて後から呼び出せるようにする仕組み。同じ値を何度も書かずに済むうえ、付けた名前そのものがコードの意味を説明してくれます。

もう少し詳しく

どういうものか

変数は、値に名前を付けて保存し、その名前で読み書きできるようにする仕組みです。price = 1200 と書けば、以降は price と書くだけで 1200 を取り出せます。値は後から入れ替えられます。

多くの入門書では「箱」に例えられますが、Python や JavaScript では、値そのものを入れるというより、値に付けた名札に近い動きをします。この違いは、同じ値を二つの名前で指したときに表に出ます。

なぜ必要か

同じ値が何度も出てくるとき、直接書いていると変更のたびに全部を探して直すことになり、必ず漏れます。名前を付けておけば定義の 1 行を直すだけです。さらに、0.1 とだけ書かれた数字が何を意味するかは読んでも分かりませんが、tax_rate という名前が付いていれば説明が要りません。

具体例

price = 1200 # 代入して作る count = 3 tax_rate = 0.1 subtotal = price * count total = int(subtotal * (1 + tax_rate)) print(total) # 3960 count = 5 # 入れ替える print(price * count) # 6000
let count = 0; // 後から変える値 const taxRate = 0.1; // 変えない値 count += 1;

つまずきやすいところ

名前の付け方でつまずく人が多くいます。adata のような名前は書くときは楽ですが、一週間後に読むと何のことか分かりません。中身を説明する名前にします。

代入と等価の混同も定番です。多くの言語で = は「入れる」、== は「等しいか調べる」で、意味がまったく違います。

宣言する場所によって使える範囲(スコープ)が変わる点も見落とされます。関数の中で作った変数は外から読めません。JavaScript では letconst はブロックの中だけで有効で、var は関数全体に及ぶという違いもあります。

似た用語との違い

用語内容
変数後から値を入れ替えられる名前
定数一度決めたら入れ替えない名前
リテラル1200"abc" のように、コードに直接書かれた値


覚え方

「二度以上出てくる値と、意味のある値には名前を付ける」で判断できます。逆に、一度しか使わず名前を付けても説明が増えない値は、そのまま書いたほうが読みやすいこともあります。

次に学ぶ

とは?

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地変数プログラミング

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

この用語を扱うコース

コース

Python入門:基礎文法編

74レッスン
コース

JavaScript入門:コードを動かす

23レッスン
コース

Java入門:基礎文法編

69レッスン
Pythonコースの全編を見る