在说dict之前,先说个口诀:非空即真、非0即真、
实现同样的功能,代码越少越牛逼
#注:字典是无序的
dict:
shenyang = { 'name':'沈阳',
'age':18,
'sex':'不知道',
'addr':'天通苑',
'qq':19823423,
'email':'shenyang@qq.com',
}
# 增加
shenyang['女朋友'] = '很漂亮'
shenyang.setdefault('house','三环里面有10套')
shenyang['age'] = 38
shenyang.setdefault('age',49) #setdefault这种方式,如果key已经存在,不管它,如果key不存在的话,就新增。
#修改
shenyang['女朋友'] = '很漂亮'
#删除
# shenyang.pop('女朋友') #指定key删除 删除的时候key不存在是会报错的
# del shenyang['age'] #用del来删,删除的时候key不存在是会报错的
# shenyang.clear() #清空字典
# shenyang.popitem() #随机删除一个key
这里可以抛出异常:
try:
shenyang.pop('女朋友')
except 异常名称 as k:
print(k)
else:
print(shenyang)
#查(取值)
shenyang.get(key) #如果没有找到则返回 none 找到则返回对应的value
循环取到dict的key、value
for k,v in shenyang.items():
print(k,'=',v)
#字典嵌套字典:
shenyang = {'lcs': { 'name':'沈阳',
'age':18,
'sex':'不知道',
'addr':'天通苑',
'qq':19823423,
'email':'shenyang@qq.com',
}}
#循环取值:
for k,v in shenyang.get('lcs').items:
print(k,'=',v)

高效字典循环:
d={'a':1,'b':2}
for k in d:
print(k,'=',d.get(k))
浙公网安备 33010602011771号