python简说(三)字典

一.字典

stu_info = {"name": "王志华", "age": 18, "addr": "北京"}
# key - value
# 1.查
# print(stu_info)
# print(stu_info['name'])
# print(stu_info['age'])
# print(stu_info.get('money', 500))
# 修改
# stu_info['addr'] = '上海'
# print(stu_info)
# 新增
# stu_info['phone'] = 1234567
# stu_info.setdefault('email', 'sfsfs@163.com')
# 用setdefault新增一个已经存在的key,它不会改变原来key的value
# stu_info.setdefault('age', 29)
# print(stu_info)
# 删除 1.删除元素
# stu_info.pop('email')
# 2.删除元素
# del stu_info['email']
# print(stu_info)
# 3.清空这个字典
# stu_info.clear()
# 4.从字典里面随机删除一个元素
# stu_info.popitem()
# print(stu_info)
# 获取字典里面所有的key
# print(stu_info.keys())
# 获取字典里面所有的value
# print(stu_info.values())
# d2拼接d1
d1 = {'b': 1}
d2 = {'a': 'v'}
d1.update(d2)
print(d1)
# 直接循环字典,每次循环的是字典的key
print(stu_info)
for i in stu_info:
s = " %s => %s" % (i, stu_info.get(i))
print(i, stu_info[i])
print(s)
# 返回可遍历的(键, 值) 元组数组。
print(stu_info.items())
# 结果:dict_items([('name', '王志华'), ('age', 18), ('addr', '北京')])
for k, v in stu_info.items():
print(" %s => %s" % (k, v))
# 判断key是否存在
# print('name' in stu_info)
# 判断key是否存在
# print('name' in stu_info.keys())

二.字典嵌套

stu_info = {
'xiaoming':{"password":123456,'phone':132323,'age':18,'addr':'北京'},
'xiaohei':{'password':123456,'phone':1223423,'age':18,'addr':'上海'}
}
# 获取小明的手机
print(stu_info['xiaoming']['phone'])
d = {
'春波':{
"car":{'BMW':5,'BENZ':3,'audi':3,'byd':4},
"house":["北京",'南京','上海'],
"money":1000000,},
'乔美玲':{
"bag":['xx','lv',],
"house":['三环','4环'],
"hzp":['skii','ysl'],
'language':{
'普通话':10,
'东北话':20,
'日语':0,
'英语':4
}
}
}
# 1、春波卖了一套上海的房子,卖了500w
d['春波']['house'].remove('上海')
d['春波']['money'] = d['春波']['money']+5000000
# 2、算一下马春波有多少辆车
car_nums = d['春波']['car'].values()
print(car_nums)
print(sum(car_nums))
# 3、春波花了100w,买了一辆劳斯莱斯
d['春波']['car'].setdefault('劳斯莱斯', 1)
# 4、乔美玲的东北话退步了,从20级变成了10级
d['乔美玲']['language']['东北话']=10
# 5、乔美玲会哪些语言
print(d['乔美玲']['language'].keys())

posted @ 2018-11-19 14:37  狐觞  阅读(182)  评论(0编辑  收藏  举报