Python
コンテナデータ型
dict
作成

Python 辞書の作成:説明と例

この投稿では、Python辞書を作成するさまざまな方法を学びます。

以下の内容をカバーします。

  • リストやタプルから辞書へ
  • forループによる辞書の作成
  • ネストされた辞書の作成
  • 辞書を使って辞書や電話帳を作成する
  • 辞書からデータフレームへ

1. 一般的な辞書の作成

Pythonの辞書は、キーと値が対になった要素を持つ一種のコレクションです。 辞書は変更可能なのでインデックスとしては使えませんが、キーを使って値を参照することはできます。 また、キーは辞書内で一意でなければなりません。

💡

他のコレクションタイプとの比較は、この投稿を参照してください。

辞書の基本的な作り方は中括弧 {} を使い、キーと値はコロン : で結びます。

ここでは空の辞書と値を持つ辞書を作成する方法を示します。

empty_dict_1 = {}
empty_dict_2 = dict()
 
my_dict = {"apple": 1, "banana": 2, "cherry": 3}

上のコードでは、"apple""banana""cherry"がキーを表し、123がそれぞれのキーに対応する値を表します。

2. リストから辞書を作る

リストを辞書に変換するのはとても簡単です。キーと値のリストを辞書に変換するには zip()dict() 関数を使用します。

zip()関数は keys リストと values リストをタプルに連結し、dict() 関数はこのタプルを辞書に変換します。 これにより、2つのリストを組み合わせた新しい辞書が作成されます。

keys = ["apple", "banana", "cherry"]
values = [1, 2, 3]
 
my_dict = dict(zip(keys, values))

3. タプルから辞書を作成する

リストと同様に、タプルは簡単に辞書に変換できる。 辞書を作成するには、タプルの最初の要素をキーとし、2番目の要素を値とします。

タプルに dict() 関数を適用すると、各タプルは辞書のキーと値のペアに変換されます。

tuples = (("apple", 1), ("banana", 2), ("cherry", 3))
 
my_dict = dict(tuples)

4. for ループによる辞書の作成

辞書内包では、forループを使って動的に辞書を作成することができます。

例えば、1から5までの数字をキーとし、それらの数字の2乗を値とする辞書を作ってみましょう。

squares = {i: i**2 for i in range(1, 6)}

5. 入れ子辞書(辞書の中の辞書)の作成

辞書の中に別の辞書を置くこともできる(入れ子辞書)。これにより、データを階層的に構成することができます。

下の例では、入れ子辞書の fruitvegetable が親辞書のキーであり、それらのキーに対応するそれぞれの値が別の辞書です。

nested_dict = {
    "fruit": {"apple": 1, "banana": 2},
    "vegetable": {"carrot": 3, "pepper": 4}
}

6. 用词典创建英日词典

字典也可以像真正的字典一样使用。这里我们将创建一个简单的英日词典。

dictionary = {
    "apple": "苹果",
    "banana": "香蕉",
    "cherry": "樱桃"
}

在此代码中,英文单词用作键,单词的日语翻译用作值。

7. 辞書を使って電話帳を作る

辞書を使って簡単な電話帳を作ることもできます。人名をキー、電話番号を値とすることができます。

phonebook = {
    "John": "010-1234-5678",
    "Jane": "010-9876-5432",
    "Mike": "010-1357-2468"
}

8. 辞書を使ったデータフレームの作成

データフレームは、Pandasライブラリが提供する2次元の表データ構造です。 複数の列を持ち、それぞれの列は異なる型の値(int、float、strなど)を持つことができます。

辞書を使用すると、データフレームを簡単に作成できます。

import pandas as pd
 
data = {
    "Name": ["John", "Anna", "Peter"],
    "Age": [28, 24, 33],
    "City": ["New York", "Paris", "Berlin"]
}
 
df = pd.DataFrame(data)
 
# Output
    Name  Age      City
0   John   28  New York
1   Anna   24     Paris
2  Peter   33    Berlin

このコードでは、各キーはデータフレームのカラム名で、そのキーに関連付けられたリストはそのカラムの値です。

データフレームを表示すると、カラム名("Name""Age""City")とそれに対応する値を見ることができます。

結論

辞書は Python において非常に便利なデータ構造です。 データの保存、取得、操作が簡単になります。

この記事で紹介した Python 辞書を作成するさまざまな方法が、実際の開発で役立つことを願っています。

copyright for Python 辞書の作成:説明と例

© 2023 All rights reserved.