Pythonの辞書(dict)を作成する3つの方法:{} と dict()

Pythonにおける**辞書(dict)**は、キー(Key)と値(Value)をペアにしてデータを格納する、非常に重要なデータ型です。「”name”」というキーに「”Tanaka”」という値を、「”id”」というキーに「101」という値を関連付ける、といった使い方をします。

リスト(list)がインデックス(0, 1, 2...)でデータを管理するのに対し、辞書はインデックスの代わりにユニーク(一意)なキーでデータを管理します。

この記事では、辞書を作成する基本的な3つの方法について解説します。

目次

1. {} (波括弧) を使った作成(リテラル構文)

最も一般的で直感的な方法が、{}(波括弧)を使用するリテラル構文です。

キーと値のペアを指定する

{キー1: 値1, キー2: 値2} のように、コロン(:)でキーと値を区切り、カンマ(,)で各ペアを区切って記述します。

# ユーザーの設定情報を辞書として定義
user_config = {
    "username": "admin-001",
    "theme": "dark",
    "notify_email": True,
    "login_count": 25
}

print(f"作成された辞書: {user_config}")
print(f"型: {type(user_config)}")

実行結果:

作成された辞書: {'username': 'admin-001', 'theme': 'dark', 'notify_email': True, 'login_count': 25}
型: <class 'dict'>

空の辞書の作成

{}(波括弧)のみを記述すると、中身が空の辞書を作成できます。

empty_storage = {}
print(f"空の辞書: {empty_storage}")
print(f"型: {type(empty_storage)}")

実行結果:

空の辞書: {}
型: <class 'dict'>

重要な注意点 {} と書くと空の**辞書(dict)**が作成されます。 空のset(集合型)を作成したい場合は、{} ではなく set() コンストラクタを使用する必要があり、これは setdict の間で最も間違いやすい点の一つです。


2. dict() コンストラクタを使った作成

dict() という組み込みのコンストラクタ(関数のようなもの)を使っても辞書を作成できます。

キーワード引数(key=value)で作成する

キーが**文字列(かつPythonの変数名として有効な文字列)**である場合に限り、dict(キー=値) のようにキーワード引数として渡すことで辞書を作成できます。

この方法では、キーをクォーテーション("')で囲む必要がなく、より簡潔に記述できる場合があります。

# キーワード引数で辞書を作成
server_settings = dict(
    host="192.168.1.1",
    port=5432,
    database="main_db"
)

print(f"設定: {server_settings}")

実行結果:

設定: {'host': '192.168.1.1', 'port': 5432, 'database': 'main_db'}

(キー, 値) のペアのリスト(イテラブル)から作成する

他のデータ形式(例:リストに格納されたタプル)から辞書を生成する場合に便利な方法です。

(キー, 値) という形式のタプルが複数格納されたリストを dict() に渡します。

# (キー, 値) のタプルのリスト
data_pairs = [
    ("item_code", "A-901"),
    ("quantity", 150),
    ("location", "Warehouse-C")
]

# リストから辞書に変換
stock_info = dict(data_pairs)

print(f"在庫情報 (辞書): {stock_info}")

実行結果:

在庫情報 (辞書): {'item_code': 'A-901', 'quantity': 150, 'location': 'Warehouse-C'}

dict() で空の辞書を作成する

dict() を引数なしで呼び出すと、空の辞書が作成されます。これは {} と等価です。

empty_dict_constructor = dict()
print(f"空の辞書 (dict()): {empty_dict_constructor}")

まとめ

Pythonで辞書を作成する方法を3つ紹介しました。

  1. {キー: 値} (リテラル構文): 最も一般的で、どのようなキー(文字列、数値など)でも指定できます。
  2. dict(キー=値) (キーワード引数): キーが単純な文字列の場合に簡潔に記述できます。
  3. dict([(キー, 値), ...]) (イテラブル): リストやタプルなど、他のデータ構造から辞書を動的に生成する際に使用します。

空の辞書を作成する場合は、{} を使うのが一般的です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次