Python字典操作
#字典类型 #创建字典 #空字典 var = dict() print(var,type(var)) var = {} print(var,type(var)) #创建具有多个数据的字典 #1. var = {'黑':'black','白':'white','蓝':'blue'} print(var,type(var)) #2. var = dict({'黑':'black','白':'white','蓝':'blue'}) print(var,type(var)) #3. var = dict(黑 = 'black',白 = 'white',蓝 = 'blue') print(var,type(var)) #4. var = [ ['黑','black'], ['白','white'], ['蓝','blue'] ] result = dict(var) print(result,type(result)) #5. keys = ['黑','白','蓝'] values = ['black','white','blue'] result = dict(zip(keys,values)) print(result,type(result)) #元素 -> 键值对 -> 键+值 #基本操作 var = {'赵云':'子龙','庞统':'士元','郭嘉':'奉孝','鲁肃':'子敬'} #访问字典: print(var['赵云']) #修改字典 var['郭嘉'] = '天妒' print(var) #删除元素 del var['郭嘉'] print(var) #添加元素 var['周瑜'] = '公瑾' print(var) #序列操作 #成员检测 ->针对于键的操作而不是值 var = {'赵云':'子龙','庞统':'士元','郭嘉':'奉孝','鲁肃':'子敬'} result = '士元' in var print(result) #len() 检测字典中元素的个数 var = {'赵云':'子龙','庞统':'士元','郭嘉':'奉孝','鲁肃':'子敬'} result = len(var) print(result) #max() 获取字典中最大的键如果不是数字键 获取最大编码的值 var = {'a':1,'b':2,'c':3,'晷':12} result = max(var) print(result) #min() 获取字典中最小的键如果不是数字键 获取最小编码的值 var = {'a':1,'b':2,'c':3,'晷':12} result = min(var) print(result) #字典的遍历 var = {'赵云':'子龙','庞统':'士元','郭嘉':'奉孝','鲁肃':'子敬'} #方法1:先遍历键,再使用变量和键来获取对应的值 for i in var: print(i,var[i]) #方法2:同时遍历键和值 result = var.items() print(result,type(result))#不是标准的列表类型 for k,v in var.items(): print(k,v) #字典推导式 var = {'ag':'sfsf','bg':'fsdf','cg':'df'} #普通推导式 result = {k:v for k,v in var.items()} print(result) #带有判断条件的推导式 result = { k:v for k,v in var.items() if len(v) == 2} print(result) #多循环的字典推导式 girls= {'zb':'bo','mm':'mei','jj':'jun'} boys = {'ll':'le','ff':'fei','ji':'jiao'} result = { g+b:gv +bv for g,gv in girls.items() for b,bv in boys.items()} print(result) #字典相关函数 var = {'孙行者':'孙悟空','沙和尚':'沙悟净','猪八戒':'猪悟能'} #clear 清空字典 var.clear() print(var,id(var)) #copy() 复制字典 newvar = var.copy() print(newvar,id(newvar)) #fromkeys() 使用序列(键)和指定的值(值)制作一个字典 list = ['fda','fsd','jgj','hfg'] result = dict.fromkeys(list,'小鸟') result = {}.fromkeys(list,'小鸟') print(result) #get() 获取字典中指定键的值 result = var.get('猪八戒','默认值')#result =var['猪八戒'] print(result) #setdefault() 向字典中添加一个元素[不存在的键则添加,存在的键不做任何操作] var.setdefault('小白龙','小白龙') print(var) #update() 修改字典中的元素 var.update(孙行者 = '孙猴子') print(var) var.update({'孙行者':'齐天大圣','猪八戒':'天蓬元帅','唐僧':'唐玄奘'}) print(var) #pop() 删除字典中指定的元素 result = var.pop('唐僧') print(var) print(result) #popitem() 随机删除字典中的一个元素 result = var.popitem() print(var) print(result) #keys() 获取字典中的所有键组成的容器 var = {'苹果':'Apple','梨':'pear'} result = var.keys() print(result) for i in result: print(i) #values() 获取字典中的所以值组成的容器 result = var.values() print(result) #items() 获取字典中的所有键和值组成的2级容器 result = var.items() print(result)