sec01 - 変数の命名規則(1)

変数の命名規則

基本

Pythonでは、変数名に使用できる文字が決められています。

  • a-z
  • A-Z
  • 0-9
  • _

小文字・大文字の半角アルファベット0から9までの半角数字アンダーバー("_")を組み合わせて変数名を定義します。

Pythonでは、大文字と小文字は区別されるため、次の変数は全て違うものとして扱われます。

NUM = 1
num = 2
nUM = 3

それぞれの変数ごとに区別してデータを管理していることを確認するため、次のコードを記述し、実行してみます。
(筆者の環境では、sec01_learning02_variables.py という名前で、ファイルを新規作成しています。)

NUM = 1
num = 2
nUM = 3
print(NUM)
print(num)
print(nUM)

実行すると、下図のようにそれぞれの値が表示されたかと思います。"NUM", "num", "nUM"がそれぞれ別の変数として認識され、データを持っていることが確認できました。

英数字とアンダーバーの組み合わせ

先ほどの例は全てアルファベットで構成されていましたが、数字やアンダーバーを組み合わせることもできます。

num1 = 1
average_score = 1.5
_tmp_data = 100

上記の"num1"のようにアルファベットと数字を組み合わせたり、"average_score"のように単語をアンダーバーで区切って変数名を表すことができます。また、"_tmp_data"のように、アンダーバーを先頭に使うこともできます。

※ しかし、数字を先頭に持ってくることはできません

1num = 2  # ERROR
_1num = 2  # OK

例えば、次のようなコードの場合、"1num"は先頭に数字が入っているのでエラーになります。どうしても変数名の先頭の方に数字入れたい場合は、最初にアンダーバーを加えるなどしてエラーを回避しましょう。

コメント

上記コードの中に"# ERROR"や"# OK"という表記が見られますが、これはコメントになります。Pythonの場合、各行の"#"より右側の文字は処理を行うためのコードではなく、コメントとして扱うため、処理の結果に影響を与えなくなります。

次のようなコードの場合、

# 2つの変数を定義する
NUM = 1  # NUM変数を定義する
num = 2  # NUMと区別される
# 各変数の情報を出力する
print(NUM)
print(num)

# 2つの変数を定義する』や『# NUM変数を定義する』といったコメントは、処理に何の影響も与えません。1行丸ごとコメントにする場合もありますし、処理の後ろにコメントする場合もあります。いずれにせよ、"#"より右側の文字列は全てコメントとして扱われます。("#"の左側のコードは処理されます。)

また、処理されるべきコードを書いたうえで、デバッグなどを行うためにコメント化することをコメントアウトと言います。

# NUM = 1
NUM = 2.5  # 1ではなく、2.5を代入した時の結果を確認してみたい
print(NUM)

上記の場合、"NUM = 1"は有効なコードですが、プログラマーが他の処理を試したいときやデバッグを行う際に、そのコードをコメントアウトする場合があります。こうすることで、自分が書いたコードを消さずに、テスト時に処理をスキップさせることができます。(後で戻す時に、最初からコードを書かなくても、コメントを外すことですぐに戻すことができます。)

あれこれと試行錯誤している最中はコメントアウトされた行が存在しているのはいいのですが、最終的にチームと共有する時は、処理に不必要なコメントアウト行は削除してから共有するようにしましょう。(※ コードの挙動を説明するためのコメントは残しておいて大丈夫です。)

尚、VisualStudioCodeの場合、コメントアウトしたい行にカーソルを合わせ、"Ctrl + /"を押下すれば、その行のコメントアウトすることができます。複数行選択すれば、選択された行が全てコメントアウトするされます。また、その行が既にコメントアウトされていた場合は、コメントアウトが解除されます。

おすすめの記事