############################
红色为常用重点方法
############################
dic = {
"1": [1, 2, 3],
"2": [2, 3, 4]
}
##### 增 ##########
dic["3"] = [1, 2, 3, 4] # 键存在就修改,不存在则是增加新的键值对
print(dic)
print(dic.setdefault("4", ["ni hao ", "zhongguoren1"])) # 键存在就修改,不存在则是增加新的键值对,并且返回这个值,这样确保一定有值存在
print(dic)
print("新创造一个字典1", dict.fromkeys([11, 12, 13], "test")) # 初始化一个新的字典,和具体对象dic没有关系,相当于一个字典类静态方法,
dic1 = dict.fromkeys([11, 12, 13], ["1", "2", "3"])# 注意:这里是浅复制,值里面如果有列表或别的字典,那么共享一个内存空间,修改一个就全部修改
print("新创造一个字典2", dic1)
dic1[11][0] = "1000"
print("因为内存共享修改值后,全部字典值都修改了", dic1)
##### 删 ##########
del dic["1"] # 这是一个python通用的方法,不是字典专用的
print("删除1", dic)
dic.pop("2") # 删除指定的一个值,如果键不存在会报错
print("删除2", dic)
dic.popitem() # 随机删除一个,不要随便使用
print("随机删除", dic)
##### 改 ##########
dic["3"] = [1, 2, 3, 6] # 键存在就修改,不存在则是增加新的键值对
print(dic)
print(dic.setdefault("4", ["ni hao ", "zhongguoren1"])) # 键存在就修改,不存在则是增加新的键值对,并且返回这个值,这样确保能有值存在
print("更新前的字典", dic)
dic.update({"3": "hahah ", "1": ["tw", "cyd"], "101": ["nihao", "world"]}) # 已经存在则更新,不存在则新增,这个方法很赞
print("更新过的字典", dic)
##### 查 ##########
print(dic["3"]) # 这种查找的方法,如果键不存在会报错
print(dic.get("100")) # 这种查找的方法,如果键不存在不会报错
print("100" in dic) # 判断一个键是否存在 相当于 "100" in keys (反之用not in)
print(dic.values()) # 打印所有的值
print(dic.keys()) # 打印所有的键
print(dic.items()) # 打印所有的键值对
print("简单循环,不需要转dic.items()先转列表,所以很高效,推荐!")
for i in dic:
print(i, dic[i])
print("复杂循环,需要转列表,效率慢一些,不推荐!")
for k, v in dic.items():
print(k, v)