"""
1.10
"""
"""
字典
字典类型数据主要以“键值对”的形式存储,类似汉语字典的目录形式。
{<键1>:<值1> ,<键2>:<值2> ....<键n>: <值n>}
{<key>:<value>...}
一个键(key)对应一个值(value)并且用逗号,分割
key可以是数字也可以是字符串
d = {101: "a", "a": "b", "me": "c", 104: "d"}
print(d)
print(type(d))
"""
"""
字典类型-字典索引
通过键来寻找字典中对应的值,类似查汉语字典的过程
<字典变量> [key]
若找不到key,就报错KeyError
d = {101: "a", "a": "b", "me": "c", 104: "d"}
print(d[101])
print(d['me'])
# print(d['没有']) #报错
"""
"""
根据key可以修改value的值
并且可以通过对不存在的key赋值,在字典最后一组数据中加入新的value
d = {101: "a", "a": "b", "me": "c", 104: "d"}
d['me'] = '我不当c了'
print(d['me'])
d['没有'] = '加我一个'
print(d)
"""
"""
字典类型-常用的操函数
len(d) 返回d的key-value个数
min(d) 返回d的最小key,需要可比较
max(d) 返回d的最大key
x in d 判断x是否在d的key中,是则返回True,否返回Fault,等价于x in d.keys()
x not in d 与上相反
若想要使用value
采用方法d.values()
字典常见方法
d.keys() 返回所有键key的信息
d.values() 返回所有值value
d.items() 返回所有键值对,键值对以元组形式存储,共同组成dict_items数据类型
d.get(key,default) 返回字典d中key对应的value,若没找到,则返回default,若default没有填,则返回None
d.pop(key,default) 删除指定键值对,并返回删除的value,若不存在,则返回default,若default没有填,则返回None
d.popitem() 随机删除一个键值对,并返回对应value
d.clear() 清空字典
# d = {"xj": "西京", "bj": "北京", "nj": "南京", "tj": "天津"}
# print(len(d))
# print(min(d))
# print(max(d))
# print('bj' in d)
# print('bj' in d.keys())
# print(d.values())
# print(d.keys())
# print(d.items()) #以元组形式储存key和value,再合并为'dict_items'
# print(type(d.values())) # <class 'dict_values'>
# print(type(d.keys())) # <class 'dict_keys'>
# print(type(d.items())) # <class 'dict_items'>
# print(d.get("xj"))
# print(d.get("xjj"))
# print(d.get("xjj", "查无此地"))
# 也可以用索引index,但是索引未找到会报错,而get方法不会
# print(d.pop("xj"))
# print(d)
# # print(d.pop("xj")) #若无key,且不写default,会直接报错,与get不一样
# print(d.pop("xjj", '查无此地'))
# print(d.popitem())
# print(d)
"""
"""
字典常见用法
d = {"xj": "西京", "bj": "北京", "nj": "南京", "tj": "天津"}
for i in d: # 等价于 for i in d.keys()
print(i, end=' ')
print('')
for i in d.keys():
print(i, end=' ')
print('')
for i in d.values():
print(i, end=' ')
print('')
for i in d.items():
print(i, end=' ')
print(type(i))
for i in d.items():
print(i[0], i[1], end='\n')
print('####')
for k, v in d.items():
print(k, end=' ')
print(v, end='\n')
"""
"""
空字典
# d = {}
# d=dict()
# d=dict({})
# d = {[]}##字典与列表混用了,会报错
# print(d, type(d))
"""