dict 字典的增删改查
数据类型划分: 可变数据类型, 不可变数据类型
可变数据类型: list dict set(集合) 不可哈希
不可变数据类型: str int bool 元组 可哈希
dict key 必须是不可变数据类型
value 任意数据类型
dict 优点:
二分查找去查询,速度快
可以存储大量的关系型数据
特点:
无序的
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
dic1['进度'] = '10%' #若没有key,则添加
dic1['age'] = 22 #若有key,则值覆盖
dic1.setdefault('进度','10%') #没有key,则添加
dic1.setdefault('age','22') #有key,不做任何改变
print(dic1)
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
pop方法删除指定的键并返回相应的值。如果没有找到键,则返回给定的d,否则引发键错误
s = dic1.pop('age') #如果有key,则删除,返回value
s = dic1.pop('进度',None) #没有key,则返回自己定的值,否则报错
s = dic1.popitem() #随机删除,返回元组,元组内部是删除的键值对
dic1.clear() #清空字典,从内存删除,不能print清空的字典,会产生报错
del dic1 #删除字典
del dic1['name'] #删除键值对,如没有key,则报错,不如pop方法
print(dic1)
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
dic1['进度'] = '10%' #若没有key,则添加
dic1['age'] = 22 #若有key,则值覆盖
dic2 = {"name":"alex","weight":75}
s = dic2.update(dic1) #把1内部的所有键值对更新到2,如key相同,则覆盖
print(s)
print(dic1,dic2)
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
print(dic1.keys())
print(dic1.values())
print(dic1.items())
返回元组 dict_keys(['age', 'name', 'sex'])
for k,v in dic1.items():
print(k,v) #输入str类型键值对
s = dic1['age'] #按key查询value
s = dic1['学习进度'] #若没有key,则报错
s = dic1.get('学习进度','找不到此key') #get方法与删除pop类似,找不到返回设置的d
s = dic1.get('age','找不到此key') #如果找到key,则返回对应的value
print(s)

浙公网安备 33010602011771号