day3_python字典
八字真言:非空即真,非0即真
1、空
a=[]
b=''
c=()
d=0
e=none
2、定义一个字典
字典是无序的,查询时会随机显示
字典是k-v形式的
1 shenyang={
2 'name':'沈阳',
3 'age':18,
4 'sex':'不知道',
5 'addr':'天通苑',
6 'qq':19823423,
7 'email':'shenyang@qq.com'8 }
3、新增
① shenyang[‘女朋友’]=‘很漂亮’
② shenyang.setdefault('house','10套')
setdefault方式,如果key已存在,操作无效,若不存在,则新增,只能新增不能修改
4、修改
shenyang['addr']='朝阳'
该方式可新增可修改,存在修改内容,不存在就新增。
5、删除
①shenyang.pop('女朋友') #指定key删除,删除的时候key不存在会报错
②del shenyang['age'] #用del来删除,删除的时候key不存在会报错
6、取值
shenyang['key值'] #若key值不存在,则会报错
shenyang.get('key值','默认值') #若key值存在,显示key的值,若key指不存在,则显示设置的默认值
7、清空字典
shenyang.clear()
8、随机删除一个key
shenyang.popitem()
9、将一个字典加入到另一个字典里
1 yaoyuan={
2 'chouyan':'1包',
3 'name':'姚远'
4 }
shenyang.update(yaoyuan)
9、 将字典中所有的项以列表的形式返回,列表中的每一项都是以键值对的形式表现的。
shenyang.items()
但这样输出并不是很好看,我们可以通过for循环的方式依次将键值对列出来
1 for k,v in shenyang.items():
2 print(k,v)
10、字典中取值
1 info=[
2 {
3 'xiaohei':
4 {
5 'money':10000,
6 'cars':['Ben-z','audi','BMW'],
7 'info': {
8 'phone':186212312,
9 'age':36
10 }
11 }
12 },
13 {
14 'xiaohong':
15 {
16 'house': {
17 '朝阳':2,
18 '海淀':3,
19 '昌平':5
20 },
21 'lan':['ch','en','jp'],
22 }
23 }
24 ]
查询xiaohong的house
print(info[1]['xiaohong']['house'])
新增海淀+2
info[1]['xiaohong']['house']['海淀']+=2
11、高效循环字典的方式
1 d={'a':1,'b':2}
2 print(d.items())
3 for k in d:
4 print(k,d.get(k))
循环取值,效率更高
items():函数以列表返回可遍历的(键, 值) 元组数组
语法:字典名.items()
字典名.get(key值) 获取字典key值对应的value值的方法