この記事では、Pythonの辞書のリストについて説明します。
この記事では、以下の方法について説明します。
- 辞書のリストを作成する
- キーと値のペアにアクセスする
- キーと値のペアを更新する
- リストに辞書を追加する
では、これ以上説明することなく、はじめましょう。
Pythonにおける辞書のリストとは?
Pythonでは、リストは値のコレクションを順序よく格納することができる線形データ構造であることは周知の事実です。
そして、これらの値は、任意のPythonオブジェクトにすることができます。
辞書もまたPythonのオブジェクトで、キー:値という形式でデータを格納します。
したがって、各要素がPythonの dictionary
であるPythonの list
を作成することができます。
そのため、このようなタイプのPythonの list
は特別な名前、 list of dictionaries で呼びます。
Pythonで辞書のリストを作成する手順
Pythonで辞書のリストを作成するには、単純なPythonのリストを作成し、その各要素がPythonの辞書であることを確認するだけで良いのです。
これをPythonで実装してみましょう。
# Defining a list of dictionaries in Python ls_dict = [{ 'py' : 'Python' , 'mat' : 'MATLAB' , 'cs' : 'Csharp' },
{ 'A' : 65 , 'B' : 66 , 'C' : 67 },
{ 'a' : 97 , 'b' : 98 , 'c' : 99 }]
# Printing the results print (ls_dict)
# Validating the type of 'ls_dict' and its element print ( type (ls_dict))
print ( type (ls_dict[ 0 ]))
|
出力してみましょう。
# Defining a list of dictionaries in Python ls_dict = [{ 'py' : 'Python' , 'mat' : 'MATLAB' , 'cs' : 'Csharp' },
{ 'A' : 65 , 'B' : 66 , 'C' : 67 },
{ 'a' : 97 , 'b' : 98 , 'c' : 99 },]
# Printing the given list of dictionaries print ( "Given Python list of dictionaries: , ls_dict)
# Creating a new Python dictionary ds = { 'Python' : "Python" , 'JournalDev' : "ALL" ,
'LinuxforDevices' : "Linux" }
# Appending the list of dictionaries with the above dictionary # Using append() method ls_dict.append(ds) # Printing the appended list of dictionaries print ( "Appended Python list of dictionaries: , ls_dict)
|
辞書のリストに辞書を追加する
新しいPython辞書オブジェクトを要素として、辞書のリストを追加することもできます。
ここではPythonのリスト append()
メソッドを使用します。
これは通常の Python リストの追加と似ています。
唯一の違いは、 append()
メソッドに渡される引数が Python 辞書でなければならないことです。
append()` メソッドは、渡された Python オブジェクト (ここでは辞書) を既存の Python 辞書リストの末尾に追加します。
例えば、上で作成した辞書のリストを新しい辞書オブジェクトで更新してみます。
そのためのPythonのコードを書いてみましょう。
# Defining a list of dictionaries in Python ls_dict = [{ 'A' : 65 , 'B' : 66 , 'C' : 67 },
{ 'py' : 'Python' , 'mat' : 'MATLAB' , 'cs' : 'Csharp' },
{ 'a' : 97 , 'b' : 98 , 'c' : 99 }]
# Printing the given list of dictionaries print ( "Given Python list of dictionaries: , ls_dict)
# Accessing and printing the key: value pairs of a list of dictionary print (ls_dict[ 1 ])
print (ls_dict[ 1 ][ 'py' ])
|
結果は以下の通りです。
# Defining a list of dictionaries in Python ls_dict = [{ 'A' : 65 , 'B' : 66 , 'C' : 67 },
{ 'py' : 'Python' , 'mat' : 'MATLAB' , 'cs' : 'Csharp' },
{ 'a' : 97 , 'b' : 98 , 'c' : 99 }]
# Printing the given list of dictionaries print ( "Given Python list of dictionaries: , ls_dict)
# Adding a new key: value pair to the 1st dictionary in the list ls_dict[ 0 ][ 'new_key' ] = 'new_value'
# Updating an existing key: value pair in the 2nd dictionary in the list ls_dict[ 1 ][ 'py' ] = 'PYTHON'
# Deleting an existing key: value pair from the 3rd dictionary in the list del ls_dict[ 2 ][ 'b' ]
# Printing the updated list of dictionaries print ( "Updated Python list of dictionaries: , ls_dict)
|
辞書のリストからキーと値のペアにアクセスする
辞書のリストのキーと値のペアにアクセスするには、まず、インデックス付けを使って辞書にアクセスする必要があります。
辞書を取得すると、その辞書の任意のkey:valueペアに簡単にアクセスできるようになります。
Pythonのコードを通して、このことを理解しましょう。
結果は以下の通りです。
この記事もチェック:Pythonのリストで要素のインデックスを取得する方法3つ
辞書リストのキーと値のペアを更新する
以下の方法で、辞書リスト中の任意の辞書のキーと値のペアを更新することができる。
- 新しいkey:valueペアを追加する
- 既存のkey:valueを更新する
- 既存のkey:valueのペアを削除する
上記のPythonの辞書リストを、Pythonコードで上記のすべての方法で更新してみましょう。
結果は以下の通りです。
まとめ
この記事では、Pythonの辞書リストとは何か、Pythonの辞書リストの作成方法、Pythonの辞書リストの追加方法、リストインデックスと辞書キーを使ってPythonの辞書リストから異なるキーと値のペアにアクセスする方法、そして3種類の方法で辞書リストを更新する方法について学びました。