字典是Python中唯一实现映射关系的内置类型;
格式:
a = {"吕布": "口口布", "关羽": "关习习", "刘备": "刘baby"}
b = dict(吕布="口口布", 关羽="关习习", 刘备="刘baby")
c = dict([("吕布", "口口布"), ("关羽", "关习习"), ("刘备", "刘baby")])
d = dict({"吕布": "口口布", "关羽": "关习习", "刘备": "刘baby"})
e = dict({"吕布": "口口布", "关羽": "关习习"}, 刘备="刘baby")
f = dict(zip(["吕布", "关羽", "刘备"], ["口口布", "关习习", "刘baby"]))
print(a, type(a))
print(b, type(b))
print(c, type(c))
print(d, type(d))
print(e, type(e))
print(f, type(f))
操作:
增加: fromkeys(iterable[,values])
d = dict.fromkeys("Fish",250)
print(d)
删除:pop(key[,default])
d = dict.fromkeys("Fish", 250)
d.pop('s')
print(d)
# 当删除到空时 提示没有
d.pop("狗", "没有")
print(d)
# 删除最后一个
d.popitem()
print(d)
# 使用del 直接删除字典 d
del d
# 使用clear函数清空字典 d
d.clear()
print(d)
修改:update([other])
d['C'] = 100
d = dict.fromkeys("FishC")
print(d)
# 使用 update([other]) 函数
d.update({'h': 200})
d.update(i='300')
print(d)
查找:get setdefault
# 查找
# 未查到返回无
d = dict.fromkeys("FishC")
a = d.get('c', '无c')
print(a)
print(d)
# 为查找到建立新的键
a1 = d.setdefault('c', "code")
print(a1)
print(d)
浅拷贝:
d = dict.fromkeys("FishC")
e = d.copy()
print(e)
使用 in not in 判断某个元素是否在字典中:
in not in 判断某个是否在字典中
d = dict.fromkeys("FishC")
a = 'c' in d
print(a)
a1 = 'c' not in d
print(a1)
嵌套:
d = {"吕布": {"语文": 60, "数学" : 20, "英语": 30}}
print(d["吕布"]["语文"])
d = {"吕布": [60, 70, 80]}
print(d["吕布"][0])
# values()提取值 iter()转换为迭代器 使用next()可以依次输出 当为空的时候报错
d = dict.fromkeys("FishC")
list(d)
print(d)
a = list(d.values())
print(a)
e = iter(d)
print(next(e))
print(next(e))
print(next(e))
print(next(e))
print(next(e))