在 Python 字典中按值查找键

Jinku Hu 2023年1月30日
  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
作者: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

DelftStack.com 创始人。Jinku 在机器人和汽车行业工作了8多年。他在自动测试、远程测试及从耐久性测试中创建报告时磨练了自己的编程技能。他拥有电气/电子工程背景,但他也扩展了自己的兴趣到嵌入式电子、嵌入式编程以及前端和后端编程。

LinkedIn Facebook

相关文章 - Python Dictionary