python 获取字典特定值对应的键的实现
作者:xiaozhimonica 发布时间:2022-07-01 19:25:21
标签:python,字典,特定值,键
对于字典,通过“键”获得“值”非常简单,但通过“值”获得“键”则需绕些弯子。
一、通用:自行定义函数方式
假设:
输入:一个字典(dic)+要找的“值”value
输出:字典中所有值为value的key,这里以set形式输出,因为对于字典而言,key值均是唯一的。
def getKey(dic,value):
if value not in dic:
return None
result=set()
for key in dic:
result.add(key)
return result
二、限制:使用内置函数
假设:需获取最大“值”对应的“键”,若dic.values()全部“值”均不相同,则可以直接使用max(dict, key)
执行过程:首先遍历迭代器dict,将返回值作为参数传递给key对应的函数,然后将函数的执行结果传给key,并以此时key值为标准进行大小判断,最终返回最大值。
简单地说:遍历字典(dic),查找所有“值”的最大值(key=dic.get(everykey)),返回该“值”的“键”(dic)
max(dic,key=dic.get)
Python字典根据值来取键
三种方法:
s = {'a':100,'b':200,'c':300}
1.print([k for k,v in s.items() if v==200])
2.b=list(s.keys())[list(s.values()).index(200)]
#将字典的值变列表,找目标下标,将键变成列表,根据刚才的下标求得值
3.new_dict={v:k for k,v in s.items()}
print(new_dict)
print(new_dict[200])
#创建新字典,在字典中查询值,但是有时候值会重复,转为字典后只有一个
来源:https://blog.csdn.net/xiaozhimonica/article/details/89707293


猜你喜欢
- clear()方法将删除字典中的所有项目(清空字典)语法以下是clear()方法的语法:dict.clear()参数
- 本文实例讲述了Python装饰器(decorator)定义与用法。分享给大家供大家参考,具体如下:什么是装饰器(decorator)简单来说
- 但凡设计师都对简洁的设计情有独钟,我们不喜欢复杂,却也不能不会rich。先来看下“rich”在字典里的意思:(1) having an ab
- 下载mysql for mac: https://downloads.mysql.com/archives/community/
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 10 - Using FX.TweenMooToo
- 一、认识h函数Vue推荐在绝大数情况下使用模板来创建你的HTML,然后一些特殊的场景,你真的需要JavaScript的完全编程的能力,这个时
- 我们知道深度神经网络的本质是输入端数据和输出端数据的一种高维非线性拟合,如何更好的理解它,下面尝试拟合一个正弦函数,本文可以通过简单设置节点
- 120726 11:57:22 [Warning] 'user' entry 'root@localhost.loc
- 报错信息:Job for mysqld.service failed because the control process exited
- 1、加字段:alter table 表名 ADD 字段名 类型;eg:alter table sys_cwzd ADD SCCLLJ VAR
- JavaScript lastIndexOf 方法lastIndexOf 方法用于计算指定的字符串在整个字符串中最后一次出现的位置,并返回该
- 效果展示打地鼠小游戏简介打地鼠的游戏规则相信大家都知道,这里就不多介绍了,反正就是不停地拿锤子打洞里钻出来的地鼠呗~首先,让我们确定一下游戏
- 本文总结了asp初学者在学习asp过程中可能会碰到的常见问题,并做了详细的解答。1.如何用Asp判断你的网站的虚拟物理路径 答:使用Mapp
- 描述给ChatGPT的描述内容:python在桌面上显示动态的文字,不要显示窗口边框。窗口背景和标签背景都是透明的,但标签内的文字是有颜色。
- 前言如果你和我一样偶尔看看股票,看看自己关注的股票是涨了还是跌了,或者想快速获取到想看的头条新闻,我们不必把过多的注意力放在去寻找上面,我们
- 简介 本次项目登录注册验证是对之前学习知识点的加深学习,这次项目的练习的知识点有函数、判断语句、循环语句、文件操作等。项目流程 运行代码之后
- use mysql; u
- # 建表CREATE TABLE `T_TEST` ( `Id` int(11) NOT NULL AUTO_INCREMENT
- 有一个需求就是需要对url进行进一步的划分得到详细的各个字段信息,下面是简单的实现:#!/usr/bin/python# -*- codin
- 数据迁移需要从mysql导入clickhouse, 总结方案如下,包括clickhouse自身支持的三种方式,第三方工具两种。create