Python中按值来获取指定的键

yipeiwu_com6年前Python基础

Python字典中的键是唯一的,但不同的键可以对应同样的值,比如说uid,可以是1001。id同样可以是1001。这样的话通过值来获取指定的键,就不止一个!而且也并不太好处理。这里同样提供两种思路来处理。

方法一:

>>> dct = {'Name': 'Alice', 'Age': 18, 'uid': 1001, 'id': 1001}
>>> def get_key1(dct, value):
...   return list(filter(lambda k:dct[k] == value, dct))
>>> get_key1(dct, 1001)
['id', 'uid']

方法二:

>>> dct = {'Name': 'Alice', 'Age': 18, 'uid': 1001, 'id': 1001}
>>> def get_key2(dct, value):
...   return [k for (k,v) in dct.items() if v == value]
>>> get_key2(dct, 1001)
['id', 'uid']
>>> get_key2(dct, 1000)
[]

上面的两种方法可以很方便高效的来处理字典中按值来找键的问题!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

使用Python实现从各个子文件夹中复制指定文件的方法

之前用来整理图片的小程序,拿来备忘,算是使用Python复制文件的一个例子。 # -*- coding: utf-8 -*- #程序用来拷贝文件并输出图片采集日期等其他信息到Exce...

python用来获得图片exif信息的库实例分析

本文实例讲述了python用来获得图片exif信息的库用法。分享给大家供大家参考。具体分析如下: exif-py是一个纯python实现的获取图片元数据的python库,官方下载地址:...

python+opencv实现阈值分割

python+opencv实现阈值分割

最近老师留了几个作业,虽然用opencv很简单一句话就出来了,但是还没用python写过。在官方文档中的tutorial中的threshold里,看到可以创建两个滑动条来选择type和v...

Python使用Opencv实现图像特征检测与匹配的方法

Python使用Opencv实现图像特征检测与匹配的方法

特征检测是计算机对一张图像中最为明显的特征进行识别检测并将其勾画出来。大多数特征检测都会涉及图像的角点、边和斑点的识别、或者是物体的对称轴。 角点检测 是由Opencv的cornerH...

Python数据结构之栈、队列的实现代码分享

Python数据结构之栈、队列的实现代码分享

1. 栈 栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或...