您好,登录后才能下订单哦!
这篇文章主要介绍python如何获取字典的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 函数的功能:获取当前字典的所有键值对的值(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 的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”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。