如何用值获取Python字典的键问题

 更新时间:2023年09月06日 16:38:49   作者:土谷祠房客  
这篇文章主要介绍了如何用值获取Python字典的键问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

用值获取Python字典的键

python字典的操作中,用键值对的键获取值的方法还是比较简单的,

例如:

d = {1:'a', 2:'a', 3:'b', 5:'c'}
print(d[5])

输出结果为:

c

但由于值在字典中并不唯一,所以,查询值对应的键则颇费周章,下面是一个由值查键的函数,得出的对应输入值的键的列表:

def get_keys_by_value(the_dict, the_value):
	rl = list()
	for k in the_dict.keys():
		if the_dict[k] == the_value:
			rl.append(k)
	return rl
if __name__ == "__main__":
	d = {1:'a', 2:'a', 3:'b', 8:'f'}
	print('the keys are: ', get_keys_by_value(d, 'a'))

函数get_keys_by_value的第一个参数(the_dict)是函数操作的字典对象,第二个参数(the_value)是要查询的值,返回参数是对应的键,由于对应的键可能不止一个,因此返回值的类型是一个列表。

运行的结果为:

======================== RESTART: C:/Users/luh/kk.py ========================
the keys are:  [1, 2]
>>> 

在编程中,需要通过值查找键的时候,我们一般使用这个函数。

python字典取值的几种方法

Python 字典(dictionary)是一种可变容器模型,可以存储任意数量的任意类型的数据。字典中的每个元素由一个键和一个值组成,键和值之间用冒号分隔。字典通常用于存储键值对的数据,例如在数据库中存储记录。

以下是 Python 字典取值的几种方法及其代码演示:

方法一:使用方括号 [ ] 运算符

使用方括号[ ]运算符可以通过键来获取字典中对应的值。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 获取字典中 "name" 键对应的值
value = my_dict["name"]
print(value)  # 输出:Tom  

方法二:使用get()方法

使用get()方法可以通过键来获取字典中对应的值,如果键不存在,则返回None。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 获取字典中 "name" 键对应的值
value = my_dict.get("name")
print(value)  # 输出:Tom
# 获取字典中 "phone" 键对应的值,由于 "phone" 不存在,返回 None
value = my_dict.get("phone")
print(value)  # 输出:None  

方法三:使用items()方法

使用items()方法可以获取字典中所有键值对,返回一个包含所有键值对的列表,列表中的每个元素是一个元组,元组的第一个元素是键,第二个元素是值。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 获取字典中所有键值对
items = my_dict.items()
print(items)  # 输出:dict_items([('name', 'Tom'), ('age', 18), ('gender', 'male')])
# 遍历所有键值对
for key, value in items:
    print(f"{key}: {value}")

方法四:使用keys()方法

使用keys()方法可以获取字典中所有键,返回一个包含所有键的列表。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 获取字典中所有键
keys = my_dict.keys()
print(keys)  # 输出:dict_keys(['name', 'age', 'gender'])
# 遍历所有键
for key in keys:
    value = my_dict[key]
    print(f"{key}: {value}")  

方法五:使用values()方法

使用values()方法可以获取字典中所有值,返回一个包含所有值的列表。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 获取字典中所有值
values = my_dict.values()
print(values)  # 输出:dict_values(['Tom', 18, 'male'])
# 遍历所有值
for value in values:
    print  

方法六:使用in关键字

使用in关键字可以判断一个键是否在字典中,如果在则返回True,否则返回False。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 判断 "name" 是否在字典中
if "name" in my_dict:
    print("name is in my_dict")  # 输出:name is in my_dict
# 判断 "phone" 是否在字典中
if "phone" in my_dict:
    print("phone is in my_dict")
else:
    print("phone is not in my_dict")  # 输出:phone is not in my_dict  

方法七:使用pop()方法

使用pop()方法可以删除字典中指定键的键值对,并返回对应的值。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 删除字典中 "age" 键的键值对,并返回对应的值
value = my_dict.pop("age")
print(value)  # 输出:18
print(my_dict)  # 输出:{"name": "Tom", "gender": "male"}  

方法八:使用popitem()方法

使用popitem()方法可以删除字典中的任意一个键值对,并返回对应的键值对,返回的是一个元组,元组的第一个元素是键,第二个元素是值。

# 定义一个字典
my_dict = {"name": "Tom", "age": 18, "gender": "male"}
# 删除字典中的任意一个键值对,并返回对应的键值对
key, value = my_dict.popitem()
print(key, value)  # 输出:gender male
print(my_dict)  # 输出:{"name": "Tom", "age": 18} 

这就是Python字典取值的几种方法及其代码演示。

最后

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python 绘制酷炫的三维图步骤详解

    Python 绘制酷炫的三维图步骤详解

    本文分步骤给大家介绍了Python 绘制如此酷炫的三维图效果 ,需要的朋友可以参考下
    2019-07-07
  • django中瀑布流写法实例代码

    django中瀑布流写法实例代码

    在本篇文章里小编给大家整理的是关于django中瀑布流写法实例代码以及相关知识点,有需要的朋友们学习参考下。
    2019-10-10
  • TensorFlow高效读取数据的方法示例

    TensorFlow高效读取数据的方法示例

    这篇文章主要介绍了TensorFlow高效读取数据的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Python ini文件常用操作方法解析

    Python ini文件常用操作方法解析

    这篇文章主要介绍了Python ini文件常用操作方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Python3+Appium安装及Appium模拟微信登录方法详解

    Python3+Appium安装及Appium模拟微信登录方法详解

    这篇文章主要介绍了Python3+Appium安装及使用方法详解,需要的朋友可以参考下
    2021-02-02
  • pycharm配置git(图文教程)

    pycharm配置git(图文教程)

    这篇文章主要介绍了pycharm配置git(图文教程),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • python中Requests请求的安装与常见用法

    python中Requests请求的安装与常见用法

    Requests是一常用的http请求库,它使用python语言编写,可以方便地发送http请求,以及方便地处理响应结果,下面这篇文章主要给大家介绍了关于python中Requests请求的安装与常见用法的相关资料,需要的朋友可以参考下
    2022-07-07
  • pyecharts的Tab和Legend布局详情

    pyecharts的Tab和Legend布局详情

    这篇文章主要介绍了pyecharts的Tab和Legend布局,pyecharts是百度开源的一款第三方绘图模块,结合的python语言的简易性和Echarts的强大绘图特性,可以用python对其调用,输出交互性好,精美乖巧且符合审美的图表,下文我们就来学习pyecharts的Tab和Legend烦人布局布局
    2022-03-03
  • Python实现多属性排序的方法

    Python实现多属性排序的方法

    这篇文章主要介绍了Python实现多属性排序的方法,非常不错,具有一定的参考价借鉴价值,需要的朋友可以参考下
    2018-12-12
  • keras 自定义loss model.add_loss的使用详解

    keras 自定义loss model.add_loss的使用详解

    这篇文章主要介绍了keras 自定义loss model.add_loss的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06

最新评论