【Python入門】定数とは?Pythonでは定数を書けない?

Python Python

Pythonの定数について解説しています。
載せているコードについてはPythonのバージョン3.11.0で動作を確認しました。

定数とは?

定数は、一意の名前に値を関連づけたものです。

変数は値が変えたりすることが可能ですが、定数を定義した後には基本的に値が変わりません。
プログラムの中で、値が変わらないものに名前をつけておくために使用します。(例えば、円周率など)

Pythonでは、大文字とアンダースコアで定義するのが一般的なようです。
PEP8というPythonのコーディング規約に記載があります。

例えば、下記のように定義します。

PI = 3.14

print(PI) # 3.14

PIという定数を作って、値として「3.14」を設定しました。
作成した定数を、print関数で出力すると「3.14」が設定されています。

定数を定義する機能がない

他のプログラミング言語では、定数を作ったときに再度同じ定数に代入しようとするとエラーになります。
ですが、Pythonについては、定数を定義するための機能がありません。

そのため、先ほどのコードは変数と同じで、値を変更することができます。

PI = 3.14

PI = 3
print(PI) # 3

PI定数に再代入して、値を「3.14」から「3」に変えました。
これは実行すると、エラーにならずに変更できてしまいます。

このように意識せずに使うと、定数の値を変更してしまう可能性があります。
そのため、プロジェクトで定数についての扱い方について、チームで認識を合わせておく必要がありそうです。

基本的には、大文字とアンダースコアで定義している変数は、定数とみなして変更しないように気をつけましょう。

関連:【Python入門】変数の使い方、変数名の付け方など!

コメント

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