変数
ここでは、変数の使い方を学びます。
変数
10°C での音速を求めてみましょう。 を音速、 を摂氏温度とすると、音速はおおよそ次のような式で求められます。
一応できましたが、 を変えようとすると、(これぐらいならすぐできますが)いちいちプログラムを全て読み直して、温度を書き換えなければなりません。これが、複雑な計算式だったら、どの値を変えればいいのかわからなくなってしまいそうです。
ここで、変数が活躍します。変数は数値や文字列を入れられる箱のようなもので、任意の数値や文字列を格納することができます。例えば、次のように hoge
と名前のついた箱に を入れておくことができます。
メタ構文変数は、プログラムなどを説明する際、特に意味のない名前が必要になったときによく使われる言葉です。名前を書くときに、東大太郎や駒場花子といった名前を使うのと同じようなものです。
日本では、hoge
、fuga
、piyo
などがよく使われます。hogehoge
なども使われます。
英語では、foo
や bar
などがよく使われます。foobar
なども使われます。
これらの単語を見たら、ここのところは任意の文字で書き換えられるんだなと思っておくと良いでしょう。
ちなみに、暗号の仕組みを説明するときなどには Alice と Bob がよく登場します(笑)
そのため、変数を使うと、次のようにより変更しやすいようなプログラムを書くことができます。
このようにすれば、例えば 10°C ではなく 20°C のときの音速を求めたくなったときに次のように t = 20
とするだけでよくなり、より簡単にプログラムを変更することができます。
Python では変数名にスペースを使えないため、語をつなげて変数名を作ることに成ります。これには、様々な命名規則があります。下に主なものの名称と例を示します。
名称 | 例 |
---|---|
キャメルケース | camelCase |
パスカルケース | PascalCase |
スネークケース | snake_case |
ケバブケース | kebab-case |
Python では、スネークケースを使うことが多いようです。
(ただし、クラス(ここでは説明しません)の命名には、パスカルケースを使うようです。)
そのため、複数の語を一語につなげる場合は、snake_case
のように _
(アンダーバー)を使って語の区切りが分かるようにすると良いでしょう。
Python では定数は使えないようです。慣習的に定数は大文字のみの変数として表すようです。例: SAMPLE_CONST
練習問題 1
算術演算子の項で解いた問題を変数を使って解いてみましょう。20°C での華氏温度を求めてみましょう。次のような式で表せます。
練習問題 2
次のプログラムを実行すると、どのような数字が出力されるか考えてみてください。
x = 2
y = 3
y = x + y
y