Python の Dictionary

Python の Dictionary とは?

ディクショナリ (dictionary) というのは、キーと値のペアを保持するオブジェクトです。

ディクショナリは { } で記述できます。例えば、name = John Doe, age = 37 という値を記述するには次のようにします。

>>> D = {'name':'John Doe', 'age':37}

こうしておくと、キーを使って次のように値にアクセスできます。

>>> D['name']
'John Doe'

また、次のように {} で空のディクショナリを作っておき、 後で値を追加することもできます。

>>> E = {}
>>> E['car'] = 'Sienna'
>>> E['make'] = 'Toyota'
>>> E
{'car': 'Sienna', 'make': 'Toyota'}

Dictionary の関数

ディクショナリで使える関数は私の手元では次のようになりました。

>>> dir(D)
['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', 
'__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', 
'__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', 
'__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', 
'__reversed__', '__setattr__', '__setitem__', '__sizeof__', '__str__', 
'__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 
'pop', 'popitem', 'setdefault', 'update', 'values']

キーのリスト、および値のリストは keys()values() 関数を使って次のように取得できます。

>>> D.keys()
dict_keys(['name', 'age'])
>>> D.values()
dict_values(['John Doe', 37])

特定のキーがディクショナリに含まれているかどうかチェックするには、次のように in を用います。

>>> 'name' in D
True
>>> 'age' in D
True
>>> 'address' in D
False

特定のキーを持っているか調べるための has_key メソッドは、Python 2 まではディクショナリのメソッドでしたが、 Python 3 で削除されました。

Dictionary の中身を列挙する方法

ディクショナリの中身を列挙するには、次のようにディクショナリの items() メソッド、 for ループ、さらに enumerate() を用いて次のようにします。

>>> for i, (k, v) in enumerate(D.items()):
>>>     print(i, k, v)
    
0 name John Doe
1 age 37

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Python 入門