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()」です。