Python: ディクショナリのすべての値を取得する values()

Pythonでディクショナリ(辞書)のすべての値を取得する場合は、 values()メソッドを使います。

ディクショナリ.values()

戻り値はリストに似たdict_valuesオブジェクトです。 dict_valuesオブジェクトの具体例を表示してみます。

d = {"a": 10, "b": 20, "c": 30}

print(d.values()) # dict_values([10, 20, 30])

print(type(d.values())) # <class 'dict_values'>

dict_valuesオブジェクトをfor文に渡す

dict_valuesオブジェクトはイテラブル(反復処理が可能)なオブジェクトです。 そのままfor文に渡して処理することができます。

d = {"a": 10, "b": 20, "c": 30}

for v in d.values():
	print(v)

# 実行結果
10
20
30

値をリストに変換する

dict_valuesオブジェクトをlistコンストラクタに渡すとリストに変換できます。

d = {"a": 10, "b": 20, "c": 30}

li = list(d.values())

print(li)        # [10, 20, 30]

print(type(li))  # <class 'list'>

値を検索する(値の存在を確認する)

ディクショナリに値が存在するかどうかを調べる場合は、 values()メソッドと in演算子を使って次のように表示できます。

d = {"a": 10, "b": 20, "c": 30}
num = 20

if num in d.values():
	print("存在します")
else: 
	print("存在しません")

「キー」を検索する場合は「キー in ディクショナリ」 又は「キー in ディクショナリ.keys()」。 「値」を検索する場合は「キー in ディクショナリ.values()」です。

Python