欢迎光临
我们一直在努力

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)

# 执行结果如下:
# >>> Neo

user = {'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)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。