Pythonで定数を定義する方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonで定数を定義する方法について現役エンジニアが解説しています。定数とは定まった値のことで、書き換え不可のデータのことです。Pythonには定数は無いので、Pythonでの定数の書き方や使い方について解説します。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Pythonで定数を定義する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

 

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Python講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonで定数を定義する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

定数と変数

プログラムにおいて扱われるデータを一定期間記憶し、必要な時に取り出して利用できるようにデータに固有の名前を定義したものを定数や変数といいます。

一時的にデータを保管する箱と認識してください。

ここでは定数と変数の定義についてそれぞれ紹介します。
 

定数とは?

定数とは固定されたデータの事で、初期状態から値が決まっており、プログラムの処理内で書き換えが行われないデータのことを指します。
 

変数とは?

変数とは、データに固有の名前を定義するところまでは定数と同じですが、変数はプログラム処理内で使用するデータの内容が必要に応じて書き換わるものを指します。
 

[PR] Pythonで挫折しない学習方法を動画で公開中

定数を定義する方法

Pythonにおいては、定数というデータは存在せず基本的には全て変数となりますが、一般的にPython定数を定義する場合は変数名を大文字のアルファベットで表記します。

このルールを守らなくてもプログラムが動かないということはありませんが、プログラム上で定数と変数を識別しやすくする為の暗黙の了解として使用しましょう。

実際に、読みやすいコードを書く事でエラー発生時の対処や、プログラムミスを減らす事につながります。

 

補足

定数同様、変数にも似たようなルールが存在します。

変数の場合は小文字で表記するというようなルールがあります。
 

実際に書いてみよう

それでは、紹介した内容とサンプルコード参考に、変数と定数を区別して実際にコードを書いてみましょう。
 

サンプルコード

# 定数を設定(定数の場合は変数名を大文字で設定する)
COUNT = 3

# 変数iと定数COUNTを使用してfor文を設定
for i in range(COUNT):
    # 変数iの値を出力
    print(i)

 

実行結果

0
1
2

 

解説

今回は定数COUNTと変数iを使用して簡単なfor文のサンプルコードを作成しました。

コード2行目では、定数COUNTに3と値を設定しています。

※今回のコードの定数COUNTはfor文での繰り返し回数に使用しています。

コード5行目では定数COUNTと変数iを使用してfor文を設定しています。コード7行目では、繰り返し処理の中での変数iを出力しています。

※この場合の変数iにはrange関数で設定された繰り返し回数の範囲0~2が順番に設定されます。

実行結果では、繰り返し回数に応じて0~2までの数値が変数iを使って出力されています。

今回の定数COUNTの数字を変更する事で繰り返し回数の設定を定数を使用して行う事ができるようなコードになっています。
 

まとめ

今回は、Pythonで定数を定義する方法について紹介しました。

Pythonでは定数というもの自体は存在しないが、独自のルールで定数を定義するような仕組みになっている事を理解出来たら良いと思います。

定数と変数をコード内で使い分ける事で、よりシステマチックなコードの作成が可能になります。

業務ツールの開発において様々なパラメータを操作するようなプログラムの場合、今回の様な定数と変数の管理がとても重要になってきますので、今回内容を参考に定数の定義の仕方について理解を深めて下さい。
 

監修してくれたメンター

菅繕久(すがよしひこ)

現在はフリーランスのエンジニアをしていてプログラミング歴は8年目になります。

普段は Python、FileMaker等を使って様々な業務で活用できるIoTプロダクトRPAツールを作成しています。
開発実績としては、業務自動化ツール(在庫管理・発注・ファイル操作 etc)、電子カルテシステム、ロボット用プログラムなどがあります。
TechAcademyではPythonコースを担当しております。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。