目次
辞書型(dictionary)の基本的な使い方
- 辞書型オブジェクトの生成
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} print(dictionary)
出力:{'雨': 'rain', '山': 'mountain', '電車': 'train'}
上記の例では、「雨」と「rain」、「山」と「mountain」、「電車」と「train」の組み合わせが要素で、「雨」「山」「電車」をキー(key)、「rain」「mountain」「train」をバリュー(value)と呼びます。
- キーに対応するバリューを取り出す
辞書型オブジェクトに、[キー]を付けることで、対応するバリューを取り出せます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} print(dictionary["雨"])
出力:rain
- 新たな要素を追加
「辞書型オブジェクト[新しいキー] = 新しいバリュー」で要素を追加できます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} dictionary["赤"] = "red" print(dictionary)
出力:{'雨': 'rain', '山': 'mountain', '電車': 'train', '赤': 'red'}
- 既存のバリューを変更
「辞書型オブジェクト[既存のキー] = 新しいバリュー」でバリューを変更できる。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train", "赤":"red"} dictionary["赤"] = "RED" print(dictionary)
出力:{'雨': 'rain', '山': 'mountain', '電車': 'train', '赤': 'RED'}
要素を削除する方法
- すべての要素を削除(clearメソッド)
clearメソッドを使用すると、辞書内のすべての要素を削除することができます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} dictionary.clear() print(dictionary)
出力:{}
- キーを指定して削除(del文)
del文を用いて、キーを指定して要素を削除することができます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} del dictionary["雨"] print(dictionary)
出力:{'山': 'mountain', '電車': 'train'}
- キーを指定して削除+削除したバリューを取得(popメソッド)
popメソッドを用いると、キーを指定して要素を削除し、かつそのバリューを取得できます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} d = dictionary.pop("雨") print(dictionary) print(d)
出力:
{'山': 'mountain', '電車': 'train'} rain
キー(key)、バリュー(value)を抜き取る方法
- キー(key)を抜き取る方法(keysメソッド)
keysメソッドを用いて、辞書のキーのみを抜き取ることができます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} d_keys = dictionary.keys() print(d_keys)
出力:dict_keys(['雨', '山', '電車'])
ただし、keysメソッドで生成されるオブジェクトは「dict_keys」クラスのため、通常のリストの様には扱えません。リストにする場合は、リストオブジェクトに変換する必要があります。
d_keys = list(d_keys) print(d_keys)
出力:['雨', '山', '電車']
- バリュー(value)を抜き取る方法(valuesメソッド)
同様に、valuesメソッドを用いて、辞書のバリューのみを抜き取ることができます。
dictionary = {"雨":"rain", "山":"mountain", "電車":"train"} d_values = dictionary.values() print(d_values)
出力:dict_values(['rain', 'mountain', 'train'])
valuesメソッドで生成されるオブジェクトは「dict_values」クラスのため、こちらも通常のリストの様には扱えません。リストにする場合は、リストオブジェクトに変換する必要があります。
d_values = list(d_values) print(d_values)
出力:['rain', 'mountain', 'train']