You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何通过单个内置方法获取字典指定值对应的键

问题解答

Python 原生dict类型暂未内置inv()这类直接通过值查找对应键的官方方法,不过你可以通过单条内置语句实现需求,无需使用循环、lambda 或自定义函数。

单语句实现方案

你可以借助内置的zip()和dict()构造反转字典,直接取值即可,示例代码如下:

# 注意不要用dict作为变量名,会覆盖内置类型
my_dict = {'age': 20, 'height' : 154}
# 单条语句获取值20对应的键
result = dict(zip(my_dict.values(), my_dict.keys()))[20]
print(result) # 输出:age

为什么没有内置反向查询方法

dict 的设计逻辑是键唯一、但值允许重复,反向查询存在天然歧义:

  • 如果同一个值对应多个键,无法确定默认返回单个键还是所有匹配键的列表
  • 反向查询的时间复杂度是O(n),和dict原生按键查询O(1)的效率差距很大,官方不希望给用户造成反向查询也高效的误解

如果你能确保所有值唯一,上述反转字典的方案完全可以满足你要的简洁调用需求,也可以提前预生成反转字典后续复用。

内容的提问来源于stack exchange,提问作者anonymous

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 20:39:03