Python 「変数」を例えでわかりやすく理解

Python
ハム
ハム

先生!「変数」って何?

ヘク
ヘク

いきなりだねハムくん。
「変数」とは簡単にいうと値を格納しておくものだよ。

ハム
ハム

格納しておくと何がいいの?

ヘク
ヘク

それをこれから解説していくね。

変数」の理解は、Pythonの基礎を学ぶ上で欠かせないです。

個人的には一番最初にどのようなものか理解しておく必要があるとすら考えています。

しかし最初は理解するのが難しいので、この記事でどんなものかだけでも理解していってください。

お前誰だよって思った方はこちらの自己紹介記事を読んでいただけると嬉しいです。

それでは早速本題へ入っていきましょう。

※次の章で「変数」のイメージを掴んでもらうのですが、Pythonにおいての「変数」とは説明が若干違いますが、まずはイメージを掴んでもらうために、あえて違う説明をしています。

変数のイメージ

何かを学ぶ上で、最初にイメージを捉えておくことは理解を促進させてくれます。

この章では、「変数」というもののイメージをざっくりと捉えてもらおうと思います。

「変数」は箱

変数」とは、簡単に言えばなんでも入る箱です。

どんなに大きなものでも、どんなに小さなものでもなんでも入れることができます。

ハム
ハム

なんでも入るならめちゃくちゃ万能じゃん!

そうなんです。めちゃくちゃ万能なんです。

そのため、Pythonでコードを書く際にも使わないことがないくらい使います。

しかし一つ注意点があります。

それは1つの変数につき、1つまでしか入れることができません。

ハム
ハム

どんなに小さくても?

どんなに小さくても、どんなに大きくても、サイズに関係なく1つまでです。

  • 変数とはなんでも1つだけ入れることができる箱

これを忘れずにこの先を読み進めていってください。

「変数」はどこにでも持ち運べる

変数」は、「どこにでも持ち運べる」という便利な機能があります。

ハム
ハム

大きいものでも、小さいものでもどこにでも持ち運べるの?

そうです。大きさに関係なくどこにでも持ち運べます。

好きなとき好きな場所に持ち運べるのでとても便利なのです。

ハム
ハム

現実世界に欲しいなあ

現実世界に欲しくなる気持ちも分かります。

これから変数を使うたびに、きっとそのように感じるはずです。

箱に名前をつけられる

箱にはなんでも入るだけでなく、名前をつけることができます。

ハム
ハム

名前はなんでもいいの?

なんでも大丈夫です。

「a」でも「あ」でもなんでも好きな名前をつけることができます。

そしてその名前を呼ぶことで、その「変数」の中身を取り出すことができます。

先ほど「どこにでも持ち運べる」と言いましたが、名前をつけることによって、運んだ先で中身を取り出すことができます。

ハム
ハム

じゃあ「変数」を2つ用意して、同じ名前をつけたらどうなるの?

いい質問ですね。

この質問の答えとしては、2つの「変数」に同じ名前をつけることはできません。

「変数」の名前は1つ1つ別々にしなければいけません。

Pythonでは2つの「変数」に同じ名前をつけると、エラーにはならず別の動きを見せるので、後の章でそれは確認しましょう。

「変数」のイメージ まとめ

この章では「変数」のイメージと掴んでもらいました。

どうでしょう?なんとなくですがイメージを掴むことはできましたか?

確認のためにもう一度確認してから次の章にいきましょう。

  • 「変数」はなんでも入る箱。
  • 「変数」はどこにでも持ち運べる。
  • 「変数」には好きな名前をつけることができる。

では次の章に進みましょう。

変数とは

この章ではPythonにおいての「変数」とはどういうものかを見ていきましょう。

先ほどイメージは掴んでもらったので、そのイメージを頭に残しつつ読み進めていってください。

Pythonにおいての「変数」とは?

Pythonで「変数」は、「値が入っている場所を指し示す」という役割を担っています。

先ほどのイメージの説明とは違うので、「えっ」と思った方もいると思います。

Pythonではこちらが正しいですが、イメージから理解してもらうために「箱」の説明をしました。

最初は「箱」という理解でも問題ないので、分かりやすい方で頭に入れておいてください。

値が入っている場所を指し示す」と言われてもすぐには理解できないと思います。

こちらもイメージで理解してもらうことにします。

Pythonでの「変数」のイメージ

あなたは本を読むのが大好きです。

特にお風呂に入りながら本を読むことが好きです。

しかし今日は本をお風呂に持っていき忘れてしまいました。

そこで家族に本を部屋からとってきてもらおうと考え読みたい本の場所を伝えました。

例えば「下から2番目の段の、左から3番目」のように。

そうこれこそが「変数」です。

ハム
ハム

ん?どゆこと?

説明しますね。

先ほどは本のタイトルや特徴ではなく、「場所」を家族に伝えました。

そしてその本を抜き取ることで、「下から2番目の段の、左から3番目」の本は別の本になります’。

これこそがまさしく「値が入っている場所を指し示す」です。

どうでしょうか?こちらの方がイメージしやすいですかね?

もしかしたらこちらの説明の方がイメージしやすい人もいるかもしれないですが、次の「代入」の説明では前の章の説明の方がイメージしやすいと感じるはずです。

代入

変数は名前の通り、指し示している値が一定ではありません。

そのため指し示す場所が変わると中の値が全く別のものとなります。

ではどうやって値の場所を指し示しているのでしょうか?

変数名 = 値

Pythonでは上のような形で値が入っている場所を指し示します。

ハム
ハム

どこが指し示してるの?

ハムさんのおっしゃる通り、場所を指し示している感ゼロですよね。

ここで前の章で説明した、「箱」のイメージを思い出してください。

右の「値」を左の「変数」という「箱」に入れている。

どうでしょう?イメージしやすいのではないでしょうか?

先ほども言ったように厳密に言えば違いますが、まずは理解をすることが第一なので、今回はそのイメージを持って帰ってください。

ハム
ハム

イメージはできたけど、なんで何も定義してないのに「代入」なの?

またまた鋭い質問ですね。

これは「変数名」というものに値を「代入」していると理解してもらえれば理解しやすいと思います。

定義」と「代入」を一気にやっていると捉えてもらっても良いと思います。

変数名

この章の最後として「変数名」について取り上げていきたいと思います。

変数名」とはその名の通り「変数」に名前をつけることです。

1つ注意点としては、名前のない「変数」はありません。

必ず1「変数」につき、1つ名前を持っています。

これを忘れないでください。

変数名」は基本的に好きなものをつけることができます。

しかしいくつかルールがあります。

  • A~Z, a~z, 1~9, _, 漢字で構成される。
  • 数字は先頭におけない。
  • _を先頭に置くときは特殊な場合なので基本的に使用しない。
  • Pythonの予約語は使用できない。

これらのルールを順番に見ていきましょう。

A~Z, a~z, 1~9, _, 漢字で構成される

そのままの通り、A~Z, a~z, 1~9, _, 漢字を使って「変数名」をつけることができます。

ただし、できれば漢字を使用することは避けてください。

理由としてはプログラミングは基本的に英語がメインだからです。

予期せぬエラーが出る恐れがあるので、基本的に漢字は使用しないようにしましょう。

数字は先頭におけない

数字を先頭に置くことはできません。

先頭に数字をおいてしまうとエラーが出るので注意してください。

しかし先頭でなければ使うことができます。

数字は先頭以外」と覚えておいてください。

_を先頭に置くときは特殊な場合なので基本的に使用しない。

「_(アンダーバー)」を「変数名」に使うことはできますが、こちらも先頭に置くことは避けてください。

その理由としては、特殊なパターンの時に「_(アンダーバー)」を先頭に置くためです。

そのため普通の「変数」の先頭に「_(アンダーバー)」をつけると読む人が勘違いしてしまうので、基本的に避けましょう。

こちらの場合はエラーは起きないので、頭の片隅に入れておいてください。

どこで「_(アンダーバー)」が使われているか知りたい方は、少し難しいですがこちら記事を参照してください。

正直最初は知らなくても良いので、理解できなくても問題ないです。

Pythonの予約語は使用できない。

ハム
ハム

予約語って何?

いきなり「予約語」って言われても分からないですよね。

予約語」というのは、予めPythonで決まった役割を担うために使われているものです。

これを使ってしまうとPythonが勘違いしてしまい、予想しない動きをしてしまう恐れがあります。

そのためこちらも忘れずに頭の中に入れておいてください。

ちなみにどんな単語が予約語かというとこちらを参照していただけると確認できます。

「変数名」のルール まとめ

変数名」のルールは大体理解できたと思います。

実際に使うまでは全てを覚えることは難しいので、これから使っていく中で覚えていければいいやという意識でいてください。

変数まとめ

この章ではPythonにおいての「変数」について見てくました。

確認のためにこの章で学んだことを振り返っていきましょう。

  • Pythonにおいて「変数」は、「値が入っている場所を指し示す」役割をしている。
  • 「変数名 = 値」という形で、値を変数に「代入」する。
  • 「変数名」にはルールがいくつかある。
    • A~Z, a~z, 1~9, _, 漢字で構成される。
    • 数字は先頭におけない。
    • _を先頭に置くときは特殊な場合なので基本的に使用しない。
    • Pythonの予約語は使用できない。

いかがだったでしょうか?Pythonにおいての「変数」の理解が深まったのではないでしょうか?

では次の章で実際にPythonでどのように「変数」が使われているのかを確認していきましょう。

「変数」の使い方を実際に見ていく

この章では実際にPythonを使って「変数」がどのように使われているのかを見ていきます。

慣れない物がバンバン出てくると思うので、前の章を振り返りながら読み進めていってください。

「変数」の簡単な実装

まずは簡単に「変数」を実行してみましょう。

a = 1

はい。これで終わりです。

ハム
ハム

え?これだけ?

そうです。これだけなんです。

なんかあっけない気がしますが、本当にこれだけです。

簡単に解説すると、左側の「a」という「変数名」が「1」という値を指し示しています。

もちろん「変数名」は他のものでも問題ないです。

a = 1
b = 2
c = 3
cardene = "カルデネ"

4つ「変数」を作ることができました。

簡単ですね!

ちなみに最後の変数の値だけ「””」がついていますが、これは「文字列型」だからです。

これについて詳しくみていきましょう。

データ型

Pythonにはいろいろな「」が存在します。

そしてここで覚えていって欲しい「」として「文字列型」と「数字型」を紹介します。

文字列型」な名前の通り、「カルデネ 」や「abc」などを表します。

一方「数字型」は、1~9の数字を表します。

文字列型」と「数字型」の見た目の違いは「“”(ダブルクオーテーション)」 or 「”(シングルクオーテーション)」で囲まれているかいないです。

実際に見ていきましょう。

a1 = 1
a2 = 2
a3 = "カルデネ"
a4 = "ハム"
a5 = "1"

a1~a5までの型がわかりますでしょうか?

答えはa1、a2が「数字型」でa3、a4、a5が「文字列型」です。

a1~a4は簡単だったと思います。

しかしa5は「””」で囲まれているけれど、中身が「1」なので迷ったと思います。

先ほど「文字列型」と「数字型」の見た目の違いでも説明したように、「“”」または「」で囲まれているかどうかで判断してください。

」については今後別の記事で詳しく取り上げると予定です。

「変数」に代入

変数」は名前の通り、値が一定ではありません。

指し示している値がコロコロと変わります。

ではどのようにして指し示す値を変えているのいでしょうか?

実はこれも簡単に実装できるので見ていきましょう。

a = "カルデネ"
a = "かるでね"

これだけです。これですでに存在する「変数名」に新たな値を指し示すことができました。

Pythonでは後に代入した値が指し示す値になります。

なのでいくつも同じ「変数名」があっても最後の部分だけ見れば中身が何かわかります。

問題

では最後に理解度を確認するために問題と出したいと思います。

問題1

「a」という変数に、「カルデネ」という「文字列」を代入してください。

答えをみていきましょう。

a = "カルデネ"

これは簡単ですね。

問題2

a = "カルデネ"

「b」という変数に「a」の値を代入してください。

答えをみていきましょう。

b = a
# または
b = "カルデネ"
print(b)

「b = a」って何?と思った方もいらっしゃると思います。

これは「変数」に「変数」を代入している状態です。

少し応用ですが、よく使われるので頭の隅にでもおいておいてください。

問題3

a = "カルデネ"
b = 1
b = 5
a = 5
a = "6"
b = 3

「a」か指し示している値はなんでしょう?

正解は「”6″」です。

実際に次のコードで試してみてください。

a = "カルデネ"
b = 1
b = 5
a = 5
a = "6"
b = 3

print(a)

print()というのは出力をしてくれる関数です。

別の記事で紹介するので、今回は表示してくれるものと理解しておいてください。

問題はここまでです。どうだったでしょうか?

今回全部解けなくても今後解けるようになれば良いので落ち込まないでくださいね。

まとめ

ここまでお疲れさまでした。

最後に「変数」についてまとめていきましょう。

  • 「変数」のイメージについての3つの要素
    • 「変数」はなんでも入る箱。
    • 「変数」はどこにでも持ち運べる。
    • 「変数」には好きな名前をつけることができる。
  • Pythonにおいて「変数」は、「値が入っている場所を指し示す」役割をしている。
  • 「変数名 = 値」という形で、値を変数に「代入」する。
  • 「変数名」にはルールがいくつかある。
    • A~Z, a~z, 1~9, _, 漢字で構成される。
    • 数字は先頭におけない。
    • _を先頭に置くときは特殊な場合なので基本的に使用しない。
    • Pythonの予約語は使用できない。

このポイントを抑えておいてください。

終わりに

カルデネ画像

今回はPythonの「変数」についてみてきました。

結構長くなってしまったので頭がパンパンだと思います。お疲れ様でした。

どうでしょう?「変数」の理解は深まったでしょうか?

少しでも「変数」の理解が深まってくれていると嬉しいです。

これからもPythonをメインに記事を更新していくので、よければ読んでいってください。

Twitterも今年から始めたので、よければ下のTwitterアイコンからみていってください。

コメント

タイトルとURLをコピーしました