# 字典是一种可变容器模型,可以存储任意类型对象 # 字典的每个键值对(key,value)都用冒号分隔,每个对之间用逗号分隔, # 创建字典 d1 = {"wang":18,'cong':20} d2 = dict(name = 'wangcong',sex = 'amle',age = 20) d3 = dict((('name','wangcong'),('age','21'))) # 字典的值可以为任意类型,但字典的键必须为不可变类型,且必须唯一, # 因为需要按照字典的键进行取值,字典可以进行修改 d4 ={'num':2} d4['num'] = 5 print(d4)# {'num': 5} # 访问字典的值:如果没有则报错 # clear:删除字典内所有元素 d1.clear() print(d1) # {} # copy:复制一个字典:浅拷贝 d6 = {'list':[4,5,6]} d7 = d6.copy() d7['list'] = [1,2,3] print(d7,d6) # 深拷贝 d8 = {'list':[4,5,6]} d9 = d8 d9['list'] = [1,2,3] print(d8,d9) # get函数:dict.get(key,default=None) # 若key存在,则返回value值,不存在返回默认值 d10 = {'num1':1,'num2':2,'num3':3} print(d10.get('num3',20)) # 3 print(d10.get('num4',20)) # 20 # in:判断一个键是否在字典中,注意是键,不是值 # 返回值为布尔值。 # dict.setdefault(key,default = None) # 跟set函数类似,不同的是找不到时将在字典中创建一个键值对。 #dict.items():以列表的形式返回可遍历的元组数组(迭代器) #dict,keys():返回一个迭代器,用来存储键 # dict.values():返回一个迭代器,用来存储值 d11 = {'num1':1,'num2':2,'num3':3} print(list(d11.items())) print(d11.keys()) # dict_keys(['num1', 'num2', 'num3']) print(d11.values()) # dict_values([1, 2, 3]) # pop(key) 删除键值对,返回值为value d12 = {'num':1} print(d12.pop('num')) # 1 # popitem() # 随机删除一对键值对,一般为末尾: # 个人感觉没有用的函数, d13 = {"wang":18,'cong':20} print(d13.popitem()) # 返回值为删除的那对键值对 print(d13)