初识字典1
Posted -0121
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识字典1相关的知识,希望对你有一定的参考价值。
字典:
d = {key1 : value1, key2 : value2 }
key值经过哈希函数的运算的结果决定value存放的地址,且key值是由不可变量组成。value可以是任何python的对象。
字典基本操作 增
dic1={‘name‘:‘xiaoyi‘} dic1[‘age‘]=22 #增加一个 print(dic1) # {‘name‘: ‘xiaoyi‘, ‘age‘: 22} 如果键已存在就可以起到修改字典作用 dic1={‘name‘:‘xiaoyi‘} dic1[‘name‘]=22 print(dic1) # {‘name‘: 22} 通过 setdefault添加键值对,可返回相应值 yo=dic1.setdefault(‘hobby‘,‘yoyo‘) print(dic1,yo) # {‘name‘: ‘xiaoyi‘, ‘hobby‘: ‘yoyo‘} yoyo setdefault存在不会改动原字典,返回值为原字典键对应值 dic1={‘name‘:‘xiaoyi‘} # aiyo=dic1.setdefault(‘name‘,‘yoyo‘) aiyo=dic1.setdefault(‘aihao‘,‘yoyo‘) print(dic1,aiyo) # {‘name‘: ‘xiaoyi‘} xiaoyi {‘name‘: ‘xiaoyi‘, ‘aihao‘: ‘yoyo‘} yoyo
查
查询 dic1={‘name‘: ‘xiaoyi‘, ‘aihao‘: ‘yoyo‘,‘fruit‘:‘apple‘} print(dic1[‘name‘]) #查键 print(dic1.keys()) #查键(转换成列表) print(list(dic1.keys())) #查值 print(list(dic1.values())) #键值全都取出 print(list(dic1.items()))
改
dic1={‘name‘: ‘xiaoyi‘, ‘aihao‘: ‘yoyo‘,‘fruit‘:‘apple‘} dic1[‘aihao‘]=‘tuzi‘ print(dic1) #update类似于列表中extend这是字典间添加相同的会覆盖 dic2={‘haolei‘:‘yo‘,‘fruit‘:‘apple‘,‘jitang‘:‘aaaa‘} dic1.update(dic2) print(dic1) print(dic2)
删
del.clear.pop删除类比列表 dic1={‘name‘: ‘xiaoyi‘, ‘aihao‘: ‘yoyo‘,‘fruit‘:‘apple‘} del dic1[‘name‘] print(dic1) dd=dic1.pop(‘fruit‘)#也会有返回value print(dic1) print(dd) dic1.clear() print(dic1) del dic1 #删除整个字典 随机删除 dic1={‘name‘: ‘xiaoyi‘, ‘fruit‘:‘apple‘,‘aihao‘: ‘yoyo‘} aiya=dic1.popitem() #返回值为元组形式 print(aiya,dic1)
排
dic1={5: ‘xiaoyi‘, 2:‘zpple‘,7: ‘aoyo‘} print(sorted(dic1))#可见默认按照key值进行排序,返回值为key值 print(sorted(dic1.values()))#也使用value值排序,返回值value值 print(sorted(dic1.items()))#按照key值排序,返回值为列表的形式 [2, 5, 7] [‘aoyo‘, ‘xiaoyi‘, ‘zpple‘] [(2, ‘zpple‘), (5, ‘xiaoyi‘), (7, ‘aoyo‘)]
历
dic1={‘name‘: ‘xiaoyi‘, ‘fruit‘:‘apple‘,‘aihao‘: ‘yoyo‘} for x in dic1:#默认是打印键,也可按照值打印.values(), print(x) #还有可以整个打印.items(). for x,v in dic1.items():#和enumerate一样 print(x,v) for x in dic1: print(x,dic1[x])#直接用键取value值
以上是关于初识字典1的主要内容,如果未能解决你的问题,请参考以下文章
初识OpenGL 片段着色器(Fragment Shader)