Python_字典_Day_01
#作者:chen #时间:2021/4/24 10:01 #字典是python中常用的一种数据结构,它是由键值对组成,每一键值对表示一种映射或对应关系, # 其中键可以是python中任意不可变数据,如整数,字符串,元组等, # 但不能使用列表,集合,字典或其他可变类型作为字典的键,值可以是任意数据类型 #1,直接赋值创建字典 #语法 变量名 = {键1:值1,键2:值2,键3:值3,....} # dic_infor = {'name':'小明','age':12,'sex':'男','className':'计科1802'} #2,使用内置函数dict()创建字典 # dic_infor_1 = dict(dic_infor)#通过其他字典创建 # # print(dic_infor_1)#创建success # dic_infor_2 = dict([('name','小明'),('age',12)])#通过键值对的序列创建 # print(dic_infor_2) # dic_infor_3 = dict(name = '小明',age = 12)#通过关键字参数创建 # print(dic_infor_3) #扩展:zip()函数将迭代对象作为参数,将对象中相应的元素打包成一个元组 # list_th = ['name','age'] # list_td = ['小明',45] # list_new = zip(list_th,list_td)#打包为元组组成的zip对象 # print(dict(list_new)) #使用fromkeys()方法创建字典 #前提条件:当所有键对应同一个值时,可以使用fromkeys()方法创建字典 #语法格式:dict.fromkeys(seq[,value]),seq为字典键 值列表,value为设置键序列(seq)的值,不写value默认为None # dict_1 = dict.fromkeys(['小明','小红'])#不写value # print(dict_1) # 运行结果:{'小明': None, '小红': None} # dict_2 = dict.fromkeys(['小明','小红'],18) # print(dict_2) #运行结果{'小明': 18, '小红': 18}两个value都是18,value相等 #注意:字典中的键是唯一的,创建字典时若出现键名相同时,后定义的键会覆盖前面的 # dic_3 = {'a' : 2,'b' : 4,'b' : 7} # print(dic_3) #运行结果{'a': 2, 'b': 7} #@@@@@@@@@@@@@@@@@@字典访问 #字典中的每一个元素都包含两项:键:值 #1,根据键访问位置 # dic_infor = {'name':'小明','age':12,'sex':'男','className':'计科1802'} # print(dic_infor['name']) #运行结果:小明 # print(dic_infor['tel'])#这个键不存在 #运行结果 # print(dic_infor['tel'])#这个键不存在 # KeyError: 'tel' 抛出异常 #2,使用get()方法访问值 #在访问字典时,不确定字典中是否含有某个值,为了防止抛出异常。 # 可以通过get()方法进行获取,若该键存在,则返回相应的值,否值返回默认值 #语法格式:字典名.get(key[,default=None]),default定义默认值, # 如果指定键的值不存在则返回默认值,当default为空时,则返回None dic_infor = {'name':'小明','age':12,'sex':'男','className':'计科1802'} # print(dic_infor.get('name')) # 运行结果:小明 # print(dic_infor.get('tel')) # 运行结果:None print(dic_infor.get('tel','该键在该字典中不存在')) # 运行结果:该键在该字典中不存在