python 字典中取值的两种方法小结

yipeiwu_com5年前Python基础

如下所示:

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

以上这篇python 字典中取值的两种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python+OpenCV+pyQt5录制双目摄像头视频的实例

Python+OpenCV+pyQt5录制双目摄像头视频的实例

起因 说起来录制视频,我们可能有很多的软件,但是比较坑的是,好像很少的软件支持能够同时录制两个摄像头的视频,于是我们用python自己写一个。要是OpenCV+python。貌似很简单就...

Python网页解析利器BeautifulSoup安装使用介绍

Python网页解析利器BeautifulSoup安装使用介绍

python解析网页,无出BeautifulSoup左右,此是序言 安装 BeautifulSoup4以后的安装需要用eazy_install,如果不需要最新的功能,安装版本3就够了,千...

python 将大文件切分为多个小文件的实例

切分文件 最近遇到需要切分文件的需求,当然首选用python来解决,网上搜了下感觉都太复杂了,其实用python自带函数即可解决。 f = open('path&filename',...

解决安装python库时windows error5 报错的问题

python安装库时,有时候会报错windows error 5,可以尝试关闭所有使用python的编辑器、文件等,然后重新pip安装,如果还是不行,可以将报错最下层文件删除即可(如果不...

opencv改变imshow窗口大小,窗口位置的方法

如下所示: cv2.HoughLinesP cv2.namedWindow("enhanced",0); cv2.resizeWindow("enhanced", 640, 4...