千家信息网

python如何获取字典的key与value

发表于:2025-02-24 作者:千家信息网编辑
千家信息网最后更新 2025年02月24日,这篇文章主要介绍python如何获取字典的key与value,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!获取字典的 key 与 value字典中的 keys 函数keys 函
千家信息网最后更新 2025年02月24日python如何获取字典的key与value

这篇文章主要介绍python如何获取字典的key与value,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

获取字典的 key 与 value

字典中的 keys 函数

keys 函数的功能:获取当前字典的所有键(key)

keys 函数的用法:dict.keys() ,无需传参,返回一个 key 集合的伪列表

示例如下:

user = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}print(user.keys())# 执行结果如下:# >>> dict_keys(['name', 'age', 'birthday'])  # >>> dict_keys 不具备列表的所有功能,无法通过索引获取成员(元素),也无法进行增加、修改等操作

那么如何将 dict_keys 这个伪列表进行修改,使其具备 列表 的相关功能呢?我们看下面的例子

user = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}user_list = list(user.keys())user_list.append('sex')print(user_list)# 执行结果如下:# >>> ['name', 'age', 'birthday', 'sex']# 如此,dict_keys 就具备了列表的所有功能

字典中的 values 函数

values 函数的功能:获取当前字典的所有键值对的值(value)

values 函数的用法:dict.values() ,无需传参,返回一个 value 集合的伪列表

示例如下:

user = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}print(user.values())# 执行结果如下:# >>> dict_values(['Neo', 18, '2000-01-01'])# >>> dict_values 不具备列表的所有功能,无法通过索引获取成员(元素),也无法进行增加、修改等操作

那么如何将 dict_keys 这个伪列表进行修改,使其具备 列表 的相关功能呢?我们看下面的例子

user = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}user_list = list(user.values())user_list.append('man')print(user_list)# 执行结果如下:# >>> ['Neo', 18, '2000-01-01', 'man']# 如此,dict_values 就具备了列表的所有功能

字典中 key 的获取

[ ] 的获取方法

在索引中, [ ] 可以获取索引对应的值;如果加上 "=" 和 值,那就是修改索引的值。在字典中通过 "[ ]" 来获取值的方式和索引是一致的,只要不书写 "=" 和 值 ,就是获取当前 key 的value。

  • 字典 + [ ] :中括号内传入 key ,不进行赋值操作,即为获取。

  • 返回 key 对应的 value 值

示例如下:

user = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}name = user['name']print('\'user\'字典 name 的值为:',name)# 执行结果如下:# >>> 'user'字典 name 的值为: Neo

字典内置函数 get 获取方法

get 函数的功能:获取当前指定的 key 的 value

get 函数的用法:dict.get(key, default=Node) , key 为需要获取 value 的 key,default 为当 key 不存在的时候返回的默认值,默认是 Node,我们也可以自定义。

注意:

当我们尝试使用 自定义 default 的时候 (dict.get(key, default='键值不存在') ),产生了 TypeError: dict.get() takes no keyword arguments 的报错信息。

解决方法:

get("key", default=Node) 方法不要添加 default= ,删除这个写法并不影响使用逻辑,但是加上会导致报错,我们可以尝试直接传入 值 或者 对应的变量提示信息。

示例如下:

user = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}default_info = '当前传入的 key 不存在'name = user.get('name', default_info)print(name)# 执行结果如下:# >>> Neouser = {'name':'Neo', 'age':18, 'birthday':'2000-01-01'}default_info = '当前传入的 key 不存在'name = user.get('sex', default_info)print(name)# 执行结果如下:# >>> 当前传入的 key 不存在

[ ] 与 get 的区别

  • [ ] 如果获取的 key 不存在,则直接报错

  • get 函数 如果获取的 key 不存在,则返回默认值

  • 开发过程中,建议优先使用 get() 函数

以上是"python如何获取字典的key与value"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

0