您的位置:首页 > 编程语言 > Python开发

python 字典中取值的两种方法

2017-06-19 10:16 288 查看
a={'name':'tony','sex':'male'}


获得name的值的方式有两种

print a['name'],type(a['name'])
print a.get('name'),type(a.get('name'))


发现这两个结果完全一致,并没有任何的差异。

怎么选择这两个不同的字典取值方式呢?

如果字典已知,我们可以任选一个,而当我们不确定字典中是否存在某个键时,我之前的做法如下

if 'age' in a.keys():
print a['age']


因为不先判断的话,直接使用a[‘age’]会导致报错keyerror,提示没有该key的值。

而是用a.get(‘age’) 则不会产生错误,解析器返回值如果存在就返回相应的value, 如果不存在就返回None.

if a.get('age'):
print a['age']


而想要改变value 的值,则需要通过

a[‘name’]=’Jack’

使用a.get(‘name’) = ‘Jack’

编译器则会提示 SyntaxError: can’t assign to function call

以上就是字典取值时的两种方法和他们的区别。欢迎大家留言讨论
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: