カテゴリ: Python 更新日: 2025/12/17

Pythonの定数の定義方法!初心者向けに慣習的な書き方と変更を防ぐコツを解説

Pythonの定数の定義方法!慣習的な書き方と変更を防ぐ方法
Pythonの定数の定義方法!慣習的な書き方と変更を防ぐ方法

先生と生徒の会話形式で理解しよう

生徒

「Pythonで変えてほしくない値って、どうやって作ればいいんですか?」

先生

「それは『定数(ていすう)』と呼ばれるものだね。Pythonにも定数を作る方法があるよ。ただし少し特徴があるんだ。」

生徒

「定数って何ですか? 普通の変数とは違うんですか?」

先生

「そうだね。変数はあとから変えられるけど、定数は『変えない約束の値』なんだ。Pythonでは少し特別な書き方で定数を表すんだよ。」

-

1. Pythonにおける「定数」とは?

1. Pythonにおける「定数」とは?
1. Pythonにおける「定数」とは?

定数(ていすう)とは、「一度決めたら変えない値」のことです。たとえば、「1年は12か月」や「円周率は3.14」といったように、いつでも同じで変わらない数字や文字のことを言います。

Python(パイソン)では、実は「絶対に変えられない値」を強制する仕組みはありません。でも、プログラマー同士で「この変数は変えませんよ」と伝えるための**ルール(慣習)**があります。

2. 定数の書き方は「全部大文字」が基本!

2. 定数の書き方は「全部大文字」が基本!
2. 定数の書き方は「全部大文字」が基本!

Pythonで定数を表すときは、次のように**変数名をすべて大文字で書く**のが一般的です。これを読む人が「あ、これは定数だな」とすぐにわかるためです。


PI = 3.14
MAX_USERS = 100
SITE_NAME = "Kami School"

このように大文字で書いておけば、「この値は変えない予定なんだな」と他の人も理解できます。

ただし、実はあとから値を変更することも**できてしまう**ので注意が必要です。


PI = 3.14
PI = 3.14159  # 実は書き換えられてしまう
print(PI)

3.14159

Pythonはやさしい言語なので、「ダメ!」とは言ってくれません。でも、「定数は変えないで使おう」というマナーがあります。

3. 定数はどこに書けばいいの?

3. 定数はどこに書けばいいの?
3. 定数はどこに書けばいいの?

定数は、プログラムの**一番上のほう**にまとめて書くのが一般的です。

たとえば、こんなふうにします。


# 定数の定義(上のほうに書く)
TAX_RATE = 0.1

def calculate_price(price):
    return price * (1 + TAX_RATE)

print(calculate_price(1000))

1100.0

このように書いておくと、あとで「TAX_RATEはどこにあるかな?」と探しやすくなります。

4. 定数の変更を防ぐための工夫

4. 定数の変更を防ぐための工夫
4. 定数の変更を防ぐための工夫

「Pythonでは定数が変更できてしまう」と言いましたが、実は「変更しないように見せる」工夫もあります。

たとえば、「クラス」という仕組みを使って、定数をまとめることもできます。


class Config:
    API_KEY = "ABC123"
    TIMEOUT = 30

このように書いておくと、定数をまとめて管理できて便利です。


print(Config.API_KEY)

ABC123

もちろん、これも実は書き換えることはできますが、意図的にしない限り、ミスで変更することは減ります。

-

5. 定数はどんなときに使うの?

5. 定数はどんなときに使うの?
5. 定数はどんなときに使うの?

定数は、たとえばこんなときに使います。

  • 送料や消費税など、ルールで決まっていて変わらない数字
  • アプリ名やバージョンなど、動作中に変更しない情報
  • 外部とやり取りするための特別な「キー」や「URL」

たとえば、送料が一律500円なら、次のように定数にします。


SHIPPING_FEE = 500

def total_price(item_price):
    return item_price + SHIPPING_FEE

こうしておけば、送料が変わったときにSHIPPING_FEEを1か所変えるだけで済みます。

6. 定数に関する注意点

6. 定数に関する注意点
6. 定数に関する注意点

最後に、Pythonで定数を使うときの注意点をいくつか紹介します。

  • 定数は全部大文字(例:MAX_LENGTH
  • 値は基本的に変更しない(あくまでマナー)
  • プログラムの上のほうに書く(見つけやすい)
  • まとめて管理したいときはクラスを使う

このようなルールを守ることで、自分にも他の人にもわかりやすいプログラムになります。

まとめ

まとめ
まとめ

この記事では、Pythonにおける定数の定義方法や大文字で書く慣習、変更を防ぐための工夫、そしてクラスを使った定数管理などを幅広く整理しながら学びました。定数という考え方は、初心者にとっては単なる変数との違いが分かりづらい部分ですが、実際には「変えない値をわかりやすく扱うための大事な仕組み」です。特にPythonでは絶対的に変更不可にする文法が存在しないため、読み手に意図を伝える書き方が重要となります。大文字で表記する習慣は、世界中のPython開発者が共通して使う重要なスタイルであり、プログラムの読みやすさや保守性の向上に役立ちます。さらに、定数をプログラム冒頭にまとめることで構造が明確になり、関係者全員が理解しやすい統一的な書き方を実現できます。 また、クラスを活用した定数管理は、複数の設定値をまとめて扱う際に便利で、APIキーやタイムアウトなど複数の設定項目を整理して記述するのに適しています。こうした工夫により、誤操作による値の変更を防ぎ、プログラム全体の安全性や再利用性を高められます。実務やアプリ開発でも頻繁に使われる書き方なので、早い段階で身につけておくことで、より分かりやすく信頼性の高いPythonコードを書けるようになります。さらに、定数は消費税や送料といった固定値の計算にも頻繁に利用され、値を一か所で管理できる点が大きな魅力となります。 以下に、この記事内容を踏まえたサンプルコードとして、クラスと大文字定数を組み合わせた実用的な定数管理の書き方を示します。実際の開発現場でも使われるスタイルなので、ぜひ参考にしながら自分のプロジェクトにも取り入れてみてください。

サンプルプログラム:クラスでまとめて管理する定数


class AppConfig:
    APP_NAME = "KAMI SYSTEM"
    VERSION = "1.0.0"
    DEFAULT_TAX_RATE = 0.1
    DEFAULT_SHIPPING_FEE = 500

def calculate_total(price):
    return int(price * (1 + AppConfig.DEFAULT_TAX_RATE) + AppConfig.DEFAULT_SHIPPING_FEE)

print(AppConfig.APP_NAME)
print(calculate_total(3000))

このようにクラスを使うことで、複数の設定値をひとまとめに管理しやすくなり、変更箇所の特定もしやすくなります。特に大規模なプロジェクトでは、設定用のクラスを作ることが一般的で、可読性と保守性が大きく向上します。定数という概念を正しく理解することで、変わらない値を適切に扱い、意図しないバグを防ぐための基礎を身につけることができるでしょう。Pythonの柔軟さゆえに定数が強制されないという特徴があるからこそ、このような「読み手に伝えるスタイル」が重要なのです。 今日学んだ内容をふまえて、自分のコードでどこに定数を使うべきか、どんな場面で定数が役立つのかを意識しながら書いてみると、プログラム全体がぐっと見やすく整理されたものになっていきます。また、Pythonの定数は他の言語と比べてルールが緩やかであるため、開発者の思いやりや整理整頓の感覚がコードに表れます。今後の学習でも、定数の扱い方を意識しながらコードを書くことを習慣にしていきましょう。

先生と生徒の振り返り会話

生徒

「今日は定数についていっぱい学べました!Pythonでは絶対に変えられないわけじゃないけど、大文字で書いたり、クラスでまとめたりする工夫が大事なんですね。」

先生

「その通りだよ。Pythonは自由度が高いからこそ、開発者同士のルールや書き方がすごく大切なんだ。特に定数はプログラムの要になることが多いから、読みやすくしておくととても役に立つよ。」

生徒

「値を一か所にまとめられるのも便利ですね。消費税とか送料も定数にしておけば、あとから変わったときにすぐ対応できますし!」

先生

「そうだね。実務でもよく使う工夫だよ。今日学んだ書き方をどんどん使っていけば、読みやすくて安全なコードが書けるようになるはずだよ。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Pythonで定数とは何のことですか?変数との違いは何ですか?

定数とは、一度決めたら変更しない値のことです。Pythonでは変数と同じように見えますが、書き方にルールがあり、大文字で定義することで「これは変えない値ですよ」と示すのが特徴です。
コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

カテゴリの一覧へ
新着記事
New1
PHP
PHPのCookieセキュリティを完全ガイド!初心者でもわかるSecureとHttpOnlyの使い方
New2
PHP
PHPのCSRF対策を完全理解!トークンを使った安全なフォーム送信の仕組みを初心者向けに徹底解説
New3
PHP
PHPのSQLインジェクション対策を完全解説!初心者でも安全にデータベースを扱う方法
New4
PHP
PHPでカウントダウンタイマーを作る方法!初心者向けにやさしく解説
-
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.2
Java&Spring記事人気No2
PHP
初心者向けPHPでMySQLからデータを取得する方法(SELECT文)完全ガイド
No.3
Java&Spring記事人気No3
Python
Pythonのリストの重複を削除する方法を解説!初心者向けにsetとdict.fromkeysの使い方をやさしく説明
No.4
Java&Spring記事人気No4
Python
Pythonで経過時間を測る方法をやさしく解説!初心者向けtime.perf_counterとtime.sleepの使い方
No.5
Java&Spring記事人気No5
Python
Pythonでエラースタックトレースを表示・取得する方法を徹底解説!初心者向け例外処理入門
No.6
Java&Spring記事人気No6
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
No.7
Java&Spring記事人気No7
PHP
PHPのOAuth認証をやさしく解説!Google・Facebookログインを初心者向けに実装しよう
No.8
Java&Spring記事人気No8
Python
PythonでMySQLに接続する方法を完全解説!初心者でもわかるpymysqlの基本
-
-