Python字典构造函数,字典的方法,字典推导式,可变与不可变类型

Python字典构造函数,字典的方法,字典推导式,可变与不可变类型

Python字典构造函数,字典的方法,字典推导式,可变与不可变类型

字典:字典是不区分数据存储和读取的先后顺序的,只能用不可变的类型作为键

创建空字典: d = {}

创建非空字典:

d = {'name':'admin','age':15}

d = {1:'admin',2:'user'}


构造函数:

dict() 创建一个空字典

dict(可迭代对象) 用可迭代对象初始化一个字典

dict(**kwargs) 关键字传参形式生成一个字典

示例:

d = dict()

d = dict([('name','tarena'),('age',15)])=>{'name':'tarena','age':15}

d = dictt(('AB','CD'))  => {'A':'B','C':'D'}

d = dict(name='admin',age=15) => {'name':'admin','age':15}

字典的键索引:

用[]运算符可以获取字典内'键'所对应的'值'

语法:字典[键]

添加/修改字典的元素

字典[键] = 值

示例:d={}

d['name']='admin'

del 语句删除字典的值:del d['name']

字典的 in / not in 运算符,仅能判断一个'键'是否存在,无法判断'值'

字典的迭代访问

字典是可迭代对象,字典只能对键进行迭代访问

d = {'name':'admin','age':'11','h':'155'}

for k in d:

print('键',k,'值',d[k])

字典的内建函数:只能对键操作,无法操作值

max(),min(),any(),all(),sum(),len()

字典的方法:

d.clear()清空字典

d.pop(key),删除key 并返回对应的值

d.copy(),返回字典的副本,只复制一层

d1.update(d2),将d1与d2合并至d1,如果有相同的键,则取用d2的值

d.get(key[,default]),返回键所对应的值,如果没有此键,则返回default

d.keys()返回可迭代的 dict_keys 键对象(全部的键)

d.values()返回可迭代的 dict_values 值对象(全部的值)

d.items()返回可迭代的 dict_items 对象(以元组的形式保存键和值)

for k,v in d.items():

print('键',k,'值',v)

字典推导式:是用可迭代对象依次生成字典内元素的表达式

语法:{键表达式:值表达式 for 变量 in 可迭代对象 [if 真值表达式]}

如:{x:x**2 for x in range(3)}=>{0:0,1:1,2:4,3:9}


不可变类型:int,float,complex,bool,str,tuple,frozenset(固定集合),bytes(字节串)

可变类型:list,dict,set(集合),bytearray(字节数组)


最后编辑于:2019/08/29作者: 牛逼PHP

发表评论