在 Python 字典中按值查找键

Jinku Hu 2023年1月30日 2020年12月19日
  1. 使用 dict.items() 在 Python 字典中按值查找键
  2. 使用 .keys().values() 在 Python 字典中按值查找键
在 Python 字典中按值查找键

字典是一个键值对中的元素集合。字典中存储的元素是无序的。在本文中,我们将介绍在 Python 字典中按值查找键的不同方法。通常情况下,使用键来访问值,但这里我们将使用值来访问键。这里的键是一个与值相关联的标识。

使用 dict.items() 在 Python 字典中按值查找键

dict.items() 方法返回一个列表,其单个元素是由字典值的键组成的元组。我们可以通过迭代 dict.items() 的结果并将 value 与元组的第二个元素进行比较来获得键。

示例代码:

my_dict ={"John":1, "Michael":2, "Shawn":3}
def get_key(val):
    for key, value in my_dict.items():
         if val == value:
             return key
 
    return "There is no such Key"
   
print(get_key(1))
print(get_key(2))

输出:

John
Michael

使用 .keys().values() 在 Python 字典中按值查找键

dict.keys() 返回一个由字典的键组成的列表;dict.values() 返回一个由字典的值组成的列表。.keys().values() 中生成的项的顺序是一样的。

Python 列表的 index() 方法给出了给定参数的索引。我们可以将 value 传递给生成的键列表的 index() 方法,得到这个值的索引。然后就可以通过返回的索引访问生成的值列表来获得该键。

my_dict ={"John":1, "Michael":2, "Shawn":3}
 
list_of_key = list(my_dict.keys())
list_of_value = list(my_dict.values())
 
position = list_of_value.index(1)
print(list_of_key[position])
 
position = list_of_value.index(2)
print(list_of_key[position])

输出:

John
Michael
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

相关文章 - Python Dictionary