Python之字典
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之字典相关的知识,希望对你有一定的参考价值。
-
字典
字典为键值的形式,key=>value
字典是另一种可变容器模型,无序,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。不可变类型:整型,字符串,元组 (可变类型:列表,字典):字典的键只能用不可变类型来创建 -
字典操作
-
字典创建
#字典创建符号标识:{key:value}
d1={} #创建空字典
d2={‘name‘:‘jerry‘,‘age‘:20,‘job‘:996}
print(d2)
#通过列表或元组生成字典
l1=[‘a‘,‘b‘,‘c‘,‘d‘]
l2=[1,2,3,4]
d3=dict(zip(l1,l2))
print(d3)
#通过列表或元组生成字典
l1=[‘a‘,‘b‘,‘c‘,‘d‘]
l2=[1,2,3,4]
-……----
#通过zip函数整合
#d3=dict(zip(l1,l2))
#print(d3)
#。。。。
#直接构造
#d4={l1:l2}#这种写法会出现错误,key不支持list类型即可变类型
l1=tuple(l1)
d5={l1:l2}
print(d5) - 字典查看
需要通过key键去查找对应的值,若key不存在报错。
判断某个可以是否是该成员: - 字典修改
#修改
print(‘jerry原来的年龄:{:d}‘.format(d2[‘age‘]))
d2[‘age‘]=30
print(‘jerry修改后的年龄:{:d}‘.format(d2[‘age‘]))
#若修改不存在的key值会添加方法修改
d2[‘sex‘]=‘male‘ - 字典添加
d2[key]=value - 字典删除
del d2[key] - 字典遍历
#字典遍历 print(‘方法1‘) for key in d2: print(key+‘:‘+str(d2[key]),end=‘ ‘) #注+只能连接字符串类型 print(‘ 方法2‘) for k,v in d2.items(): print(k,‘=‘,v,end=‘ ‘) #遍历字典的key print(‘ 方法3‘) for key in d2.keys(): print(key,end=‘ ‘) #遍历字典的值 print(‘ 方法4‘) for value in d2.values(): print(value,end=‘ ‘)
- 字典推导式
形式类似列表元组操作:
d6={expression:for iter_var in interable [if condition] }
-
-
简单使用
1.字典嵌套遍历#---------------字典嵌套遍历--------- # grade={ # ‘赵丽颖‘:{ # ‘国籍‘:‘中国‘, # ‘民族‘:‘汉‘, # ‘出生日期‘:‘1987年10月16日‘, # ‘身高‘:‘165cm‘ # } # } # for name,info in grade.items(): # print(name) # for key,value in info.items(): # print(key+‘:‘+value)
2.星座测试
# name=[‘周公子‘,‘李大爷‘,‘张冠‘,‘李戴‘,‘王五‘,‘刘子‘,‘老子‘,‘庄子‘,‘梁子‘,‘李子‘,‘麻子‘,‘痱子‘] # star=[‘白羊座‘,‘金牛座‘,‘双子座‘,‘巨蟹座‘,‘狮子座‘,‘×××座‘,‘天秤座‘,‘天蝎座‘,‘射手座‘,‘摩羯座‘,‘水瓶座‘,‘双鱼座‘] # pro=[‘易燃易爆,干脆利落,敢作敢当,爱冒险‘, # ‘精打细算,策划力强,有责任感‘, # ‘脑子好,口才溜,变脸快,搞笑冠军‘, # ‘人善,贴心,宅,心灵美‘, # ‘慷慨,有原则,爱表现,不套路‘, # ‘追求完美,处事冷静,独立,认真‘, # ‘交际高手,人见人爱,内心忧郁‘, # ‘神秘,狠,大胆,第六感强‘, # ‘幽默率真,爱自由,有影响力‘, # ‘耐力强,面瘫,自律律己,少言寡语‘, # ‘求新鲜,爱动脑,思想前卫,触觉敏感,无情‘, # ‘多愁善感,爱幻想,柔软可爱‘] #构造个人字典 # man_dict=dict(zip(name,star)) # print(man_dict) #构造星座字典 # star_dict=dict(zip(star,pro)) # print(star_dict) # new=dict(zip(man_dict,star_dict)) # while True: # name=input(‘please you name:‘) # if name in man_dict: # print(‘你名字:‘+str(name)+‘,‘+‘属于‘+ man_dict[name]) # print(‘特点:‘,star_dict[man_dict.get(name)]) # else: # break
以上是关于Python之字典的主要内容,如果未能解决你的问题,请参考以下文章