一、字典的应用场景 思考1:如果有多个数据,录入:'TOM','男','20',如何快速存库。 字典,字典里面的数据都是键值对形式的出现,字典的数据和数据顺序没有关系,即字典不支持下标,只要找到对象的键就行。 二、创建字典的语法 1.符号为大括号 2.数据为键值对形式出现 3.各个键值对之间用逗号隔开就行 #####有数据的字典 dict1 = {'name':'Tom','gender':'男','age':20} print(dict1) print(type(dict1)) #####创建空字典 dict2 = {} #大括号 print(type(dict2)) dict3 = dict() print(type(dict3)) # 三、字典的常见操作 # 3.1增 # 写法:字典序列【key】=值 # 注意:如果key存在,则修改这个key对应的值,如果key不存在则新增键值对。 dict1 ={'name':'Tom','age':20,'gender':'男'} dict1['ID'] = 110 print(dict1) dict1['name'] = 'rose' print(dict1) #3.2 删除数据 dict1 ={'name':'Tom','age':20,'gender':'男'} #del(dict1) del dict1['name'] #如果存在可以删除,不存在报KEY 错误 print(dict1) dict1.clear() print(dict1) #3.3 修改 dict1 ={'name':'Tom','age':20,'gender':'男'} dict1['name'] = 'ROSE' dict1['id'] = 11100 print(dict1) #3.4 查找操作 dict1 ={'name':'Tom','age':20,'gender':'男'} print(dict1['name']) #如果key存在,返回对应的值。如果不存在,报错。 #函数 #字典序列.get(key,默认值) print(dict1.get('name')) print(dict1.get('id',110)) #如果key不存在,返回第二个参数110 print(dict1.get('id'))#如果不存在,返回None #keys() #查找字典中所有的key,返回可迭代的对象 print(dict1.keys()) #可以用于for遍历的对象 #values() 查找当前字典的所有值,返回可迭代的对象 print(dict1.values())# #items() print(dict1.items())#查找里面的键值对,返回可迭代的对象 for key,value in dict1.items(): print(key,value) # 四,字典的循环遍历 # 1.遍历字典的key dict1 ={'name':'Tom','age':20,'gender':'男'} for key in dict1.keys(): print(key) # 2.遍历字典的values for value in dict1.values(): print(value) # 3.遍历字典的元素 for item in dict1.items(): print(item) # 4.遍历字典的键值对 dict1 ={'name':'Tom','age':20,'gender':'男'} for key,value in dict1.items(): print(key) print(value) # print (f'{key}={value}') #格式化f-string # print("{}={}".format(key,value))##格式化.format # print('%s=%s'%(key,value)) #格式化% #集合的学习 # 一、创建集合 s1 = {10,20,30,40,50} print(s1) s2 = {10,20,30,40,50,60,70} print(s2) s3 = set('abcdefg') print(s3) s4 = set() #创建空集合只能用set() print(type(s4)) print(s4) #集合无顺序性,不支持下标操作,集合数据去重功能。 # 二、集合的常见方法,add(),update() s1 = {10,20,30,40,50} s1.add(60) #只增加单个数 s1.add(10) s1.update([10,100]) #增加的是序列 print(s1) #删除操作 # remove() 删除集合的指定数据,数据不存在报错 # discard() 删除集合的指定数据,数据不存在也不报错 #pop() 随机删除数据,返回这个数据 s1 = {10,20,30,40,50} # s1.remove(10) # s1.remove(100) 报错 # s1.discard(20) # s1.discard(20) #再次删除也不报错 # pop:() a = s1.pop() print(a) print(s1) ########集合的查找 # in 判断数据在集合序列 # not in 判断数据不在集合序列 s1 = {10,20,30,40,50} print(10 in s1) print(20 not in s1)