定数の使い方 | 変数と定数 | Python本格超入門

スポンサーリンク

スポンサーリンク

定数の使い方

定数とは、一度定義するとプログラムの実行中にその値を変更しない値のことです。定数は、プログラム内で固定の値を扱うときに便利で、コードの可読性や保守性を向上させます。この章では、Pythonにおける定数の使い方について説明します。

Pythonにおける定数の特徴

Pythonでは、他のプログラミング言語のように「定数」を厳密に定義する構文はありません。しかし、慣習として定数を定義する際には、大文字で名前をつけるのが一般的です。プログラマーは、大文字で定義された変数を「定数」として扱い、プログラム中でその値を変更しないことを心がけます。

定数の定義方法

Pythonで定数を定義する際は、次のように大文字の名前を使って変数を定義します。


# 定数の例
PI = 3.14159  # 円周率
GRAVITY = 9.81  # 重力加速度 (m/s^2)
    

この例では、PIGRAVITYが定数として定義されています。Pythonでは、定数に対して厳密な保護機能はありませんが、慣習的にこのように大文字で定義された変数は変更されないことが期待されています。

定数の使い方

定数は、プログラムの中で頻繁に使われる固定値に対して使います。これにより、後から値を変更する必要が生じた場合でも、定数の値を1カ所変更するだけで済むため、メンテナンスが容易になります。


# 定数を使った計算
PI = 3.14159
radius = 5

# 円の面積を計算
area = PI * (radius ** 2)
print(f"円の面積: {area}")
    

この例では、PIという定数を使って円の面積を計算しています。定数を使うことで、コードの意味が明確になり、理解しやすくなります。

定数を使う際の注意点

定数を使う際には、いくつかの注意点があります。

  • 定数名の命名規則: 大文字で名前をつけることが推奨されます。これにより、定数であることが一目でわかります。
  • 定数は変更しない: 定数の値を変更しないように注意しましょう。Pythonでは強制的に値の変更を防ぐ機能はありませんが、コードの可読性や一貫性を保つためにも、定数は一度定義したら変更しないことが重要です。
  • コメントを活用: 特に物理定数やプログラムの設定値など、意味のある定数にはコメントをつけてその役割を明記することで、後からの理解を助けます。

Pythonで定数を保護する方法

Pythonには定数を厳密に保護する構文がありませんが、dataclassesenumモジュールを使って定数の役割を持たせる方法があります。次の例は、enumモジュールを使って定数のような振る舞いを実現する方法です。


from enum import Enum

class Constants(Enum):
    PI = 3.14159
    GRAVITY = 9.81

# 定数の利用
print(Constants.PI.value)
print(Constants.GRAVITY.value)
    

この方法では、enumを使って定数を定義し、それらの値がプログラム中で変更されないように管理することができます。Enumを使用することで、定数をより安全に扱うことができます。

まとめ

Pythonでは、定数を厳密に定義する構文は存在しませんが、慣習に従って大文字の変数名を定数として扱います。定数はプログラムの可読性や保守性を向上させるために重要です。プログラム内で頻繁に使われる値や、変更されるべきでない値には、定数を使用することをお勧めします。