🙆‍♀️

Pythonで配列を辞書に変換する

2024/06/02に公開

すること

Pythonで配列を辞書に変換する

実装方法

dict()

  • 明示的ではない
# 名前とメールアドレスのペアを格納するリスト
contacts: list(tuple[str, str]) = [
    ("Alice", "alice@example.com"),
    ("Bob", "bob@example.com"),
    ("Charlie", "charlie@example.com")
]

# リストを辞書に変換する
contacts_dict: dict[str, str] = dict(contacts)

# 辞書の内容を出力
print(contacts_dict)
# {
#     "Alice": "alice@example.com",
#     "Bob": "bob@example.com",
#     "Charlie": "charlie@example.com"
# }

for文

  • あまりスマートではない
# 名前とメールアドレスのペアを格納するリスト
contacts = ...

# 空の辞書を作成
contacts_dict = {}

# リストをループして辞書に追加
for name, email in contacts:
    contacts_dict[name] = email

# 辞書の内容を出力
...

内包表記

  • おすすめ
# 名前とメールアドレスのペアを格納するリスト
contacts: list(tuple[str, str])  = ...

# 内包表記を使ってリストを辞書に変換
contacts_dict: dict[str, str] = {name: email for name, email in contacts}

# 辞書の内容を出力
...

おまけ

辞書を配列に変換する

# 辞書を作成
contacts_dict = {
    "Alice": "alice@example.com",
    "Bob": "bob@example.com",
    "Charlie": "charlie@example.com"
}

# 辞書をリストに変換
contacts_list = [(name, email) for name, email in contacts_dict.items()]

# リストの内容を出力
print(contacts_list)

Discussion