Pythonで辞書(dict)を初期化するさまざまな方法を紹介します。
1. Literalによる辞書の初期化
PythonのLiteral中に { }
で辞書を初期化できます。
以下の例は、辞書に何もない、 Empty 辞書を作成する例です。
my_dict = {}
print(my_dict)
Output:
{}
また、ディクショナリ初期化時、以下のようにkeyとvalueを初期値に設定できます。
my_dict = {
'Korea': 'Seoul',
'Japan': 'Tokyo',
}
print(my_dict)
print(my_dict['Korea'])
Output:
{'Korea': 'Seoul', 'Japan': 'Tokyo'}
Seoul
1.1 Nested Dictionary
ディクショナリの中に value でディクショナリを持つことができます。
my_dict = {
'Korea': {
'city1': 'Seoul',
'city2': 'Busan',
},
'Japan': 'Tokyo',
}
print(my_dict)
print(my_dict['Korea']['city1'])
Output:
{'Korea': {'city1': 'Seoul', 'city2': 'Busan'}, 'Japan': 'Tokyo'}
Seoul
2. dict()で辞書を初期化する
dict()
は空の辞書を生成します。初期化後、 my_dict[key] = value
のようにkeyとvalueを入力できます。
my_dict = dict()
print(my_dict)
my_dict['Korea'] = 'Seoul'
my_dict['Japan'] = 'Tokyo'
print(my_dict)
Output:
{}
{'Korea': 'Seoul', 'Japan': 'Tokyo'}
辞書の初期化時に、keyとvalueの初期値を入力するには、以下のように引数に渡すだけです。注意すべき点は、キーを渡すときに ""
または ''
のような引用符を使用しません。
my_dict = dict(Korea='Seoul', Japan='Tokyo')
print(my_dict)
print(my_dict['Korea'])
Output:
{'Korea': 'Seoul', 'Japan': 'Tokyo'}
Seoul
2.1 Nested Dictionary
以下のように、ディクショナリ内にディクショナリを持っているように初期化することもできます。
my_dict = dict(Korea = dict(city1 = 'Seoul', city2 = 'Busan'), Japan='Tokyo')
print(my_dict)
print(my_dict['Korea']['city1'])
Output:
{'Korea': {'city1': 'Seoul', 'city2': 'Busan'}, 'Japan': 'Tokyo'}
Seoul
2.2 dict() と zip() で初期化
dict()
と zip()
を使うと、2 つのリストの要素を key と value で持つディクショナリを作成できます。
list1 = ['Korea', 'Japan']
list2 = ['Seoul', 'Tokyo']
my_dict = dict(zip(list1, list2))
print(my_dict)
Output:
{'Korea': 'Seoul', 'Japan': 'Tokyo'}
2.3 dict()にリストを引数として渡して初期化
dict()
に 2 つの Tuple を持っているリストを渡すと、 Tuple の要素を key と value で持つディクショナリを生成できます。
list1 = [('Korea', 'Seoul'), ('Japan', 'Tokyo')]
my_dict = dict(list1)
print(my_dict)
Output:
{'Korea': 'Seoul', 'Japan': 'Tokyo'}
3. fromkeys() で辞書を初期化する
fromkeys()
に引数としてリストを渡すと、リストの要素をキーとして持つディクショナリが生成されます。 value は None に設定されます。
my_list = ['Korea', 'Seoul']
my_dict = dict.fromkeys(my_list)
print(my_dict)
Output:
{'Korea': None, 'Seoul': None}
デフォルトに設定されている値はNoneです。次の2番目の引数を渡すと、その値をデフォルト値にディクショナリが初期化されます。
my_list = ['Korea', 'Seoul']
my_dict = dict.fromkeys(my_list, 'City')
print(my_dict)
Output:
{'Korea': 'City', 'Seoul': 'City'}
4. Comprehensionによる辞書の初期化
Comprehensionを使用して、次のように辞書を作成できます。
my_dict = {n: n*n for n in range(5)}
print(my_dict)
Output:
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
Related Posts
- Python - JSONファイル読み書きする方法
- Python - 平方根の計算方法(Square Root)
- Python - 文字列 特定文字 削除
- Python lower() 文字列を小文字に変換
- Python upper() 文字列を大文字に変換
- Python - ファイル数の確認
- Python - イテレーションステートメントでセット巡回
- Python - 文字列位置(Index)を探す
- Python - ファイルを読み込み、1行ずつリストに保存する
- UbuntuにPython 3.10をインストールする方法
- Python - 関数の定義と呼び出し方法
- Python - ディクショナリーの整理と例
- Python - ディクショナリーの初期化、4つの方法
- Python - XML生成とファイルの保存
- Python - XML解析、タグ、または要素別に読み取る
- Python - 文字列をリストに変換する方法
- Python - 'and'と'&'の違い
- Python - 文字列 切り取り(substring、slicing)
- Python - 'is'と'=='の違い
- PythonでShell Command、スクリプトの実行
- Python - 数字3桁ごとにコンマ(,)を入れる方法
- Python - 辞書をリストに変換
- Python - 文字列から数字のみを抽出する方法
- Python - zipで二つのリスト縛り
- Python - リストを文字列に変換する
- Python - 辞書にキーがあることを確認する
- Python - ファイル、フォルダが存在確認
- Python - floatをintに変更する方法
- Python - リストの最初、最後の 要素を取得する方法
- Python - bytesをStringに変換する方法
- Python - Stringをbytesに変換する方法
- Python - 辞書の重複排除方法
- Python - 二つのリスト一つ併合
- Python - リストの重複排除、4つの方法
- Python - listの先頭にデータを追加する