Pythonの変数定義と命名規則の解説(コード実例付き)

この記事では、Pythonでの変数定義と命名規則について、解説します。

変数定義の基本

Pythonで変数を定義するには、以下のように変数に値を代入します。

# 例: 変数 x に整数値 10 を代入
x = 10

Pythonは動的型付け型言語ですので、基本的には宣言は不要です(型を宣言する場合は、型ヒントの項目を参照) 。

変数名に使用できる文字

  • アルファベット (a-z, A-Z)
  • 数字 (0-9) ※ただし先頭は不可
  • アンダースコア (_)

命名規則と推奨事項

規則/推奨 詳細
使用可能文字 アルファベット、数字、アンダースコア my_variable, x, name123
先頭文字 数字は使用不可 123invalid (エラー), valid123 (OK)
予約語の禁止 下記の予約語は使用不可 for (エラー), my_for (OK)
大文字・小文字の区別 区別される myVariablemyvariable は別の変数
スペースの禁止 使用不可 my variable (エラー), my_variable (OK)
推奨: スネークケース 小文字とアンダースコアで単語を区切る user_name, product_price, is_valid
推奨: 意味のある名前 変数の役割や内容を表す名前をつける age (年齢), total_amount (合計金額) など
非推奨: 短すぎる/曖昧な名前 1文字変数 (x, y など) や意味不明な名前は避ける (特に理由がない限り。ループカウンタの i, jなどは許容される) a, temp, xyz など (特別な理由がない限り避ける)
型ヒント (オプション) 変数の型を明示することも可能 (Python 3.5 以降) age: int = 30, name: str = "Alice"

予約の語一覧

Python予約語は以下の通りです。これらを変数名、関数名、クラス名などに使用することはできません。

False      await      else       import     pass
None       break      except     in         raise
True       class      finally    is         return
and        continue   for        lambda     try
as         def        from       nonlocal   while
assert     del        global     not        with
async      elif       if         or         yield

予約語Pythonのバージョンによって変更される可能性があります。簡単に予約語を確認する方法としてkeywordモジュールを使う方法を紹介します。

import keyword
print(keyword.kwlist)

型ヒント

型ヒントは必須ではありませんが、コードの可読性向上、静的解析ツール (mypy など) での型チェック、IDE でのコード補完に役立ちます。

# 基本的な型ヒント
age: int = 25
name: str = "Bob"
is_active: bool = True
prices: list[float] = [1.99, 2.50, 3.00]

# 関数への型ヒント (引数と戻り値)
def add(x: int, y: int) -> int:
    return x + y

コード例

シンプルな変数定義

# 変数に値を代入
x = 10
message = "Hello"

# 変数の値を出力
print(x)
print(message)

型ヒント付きの変数定義

age: int = 30
name: str = "Alice"

print(f"{name} is {age} years old.")  # f-string を使った出力
  1. リストと辞書の定義
# リスト (複数の値をまとめて管理)
numbers: list[int] = [1, 2, 3, 4, 5]

# 辞書 (キーと値のペアを管理)
user_info: dict[str, str] = {
    "name": "Charlie",
    "email": "charlie@example.com",
}

print(numbers[0])  # リストの最初の要素 (1) を出力
print(user_info["email"])  # 辞書から email を取得して出力

定数

Pythonには厳密な定数(変更ができない変数)の機能はありません。 慣習として、すべて大文字のスネークケースで記述し、再代入しないというルールを設けることで定数のように扱います。

    MAX_VALUE = 100
    DEFAULT_COLOR = "blue"

[PR] Pythonの基礎学習に利用可能なUdemyコースを紹介します。

click.linksynergy.com

click.linksynergy.com