#dictionary 字典
字典:
1. 符号:{}
2. 关键字:dict
3. 保存的元素:key : value (键:值)
(element 元素)
1 dic={} #空字典定义 2 dic1=dict() #空字典定义 3 dic2={'id':'19347234829234','name':'lily','age':'24'} #字典元素成对出现 4 5 dic3=dict([('name','lily'),('age','25')]) 6 print(dic3)
#字典的增删改查:如果在字典中存在同名的key,则覆盖,没有则实现添加功能
1 d6={} 2 d6['brand']='huawei' 3 print(d6) 4 d6['brand']='mi' 5 print(d6)
#案例:
用户注册
username
password
email
phone
1 print('-------------------欢迎来到智联招聘------------------') 2 base=[] 3 4 while True: 5 username=input('输入用户名:') 6 password=input('输入密码:') 7 repassword=input('输入确认密码:') 8 email=input('输入邮箱:') 9 phone=input('输入电话:') 10 #定义一个字典 11 user={} 12 #将信息保存到字典 13 user['username']=username 14 if password == repassword: 15 user['password'] = password 16 else: 17 print('两次密码不一致,重新输入:') 18 continue 19 20 user['email']=email 21 user['phone']=phone 22 #保存到数据库 23 base.append(user) 24 answer = input('是否继续注册:(y/n)') 25 if answer!='y': 26 break 27 print(base)
1 #增加: 2 list1=[] 3 list.append(element) 4 dict={} 5 dict[key]=value 6 #修改: 7 list[index]=newvalue 8 dict[key]=newvalue 9 #查询: 10 list[index] 11 dict[key] 12 #删除 13 del dic[key]
1 list=[3,5,6,7] 2 print(list[2]) #列表根据下标查找 3 dic1={'1':'张','2':'里','3':'就'} 4 print(dic1['2']) #字典根据key查找
#单独遍历字典结果是:字典的key
#字典里面的函数: items() values() keys()
1 print(dic1.items()) 2 3 dic2={'里':98,'是':87,'键':99} 4 for key,value in dic2.items(): 5 if value>90: 6 print(key)
#values(): 取出字典中的所有值,保存到列表中
1 for i in dic2.values(): 2 print(i)
#keys():获取所有的key
1 names=dic2.keys() 2 print(names) 3 for name in names: 4 print(name)
#in 用于判断元素有没有在字典key中出现
1 print('里' in dic2) #True
1. 根据key获取值,如果key在字典中没有则报出keyError:
dic[key]=value
2. 字典的内置函数:get()
get(key)--->value 如果取不到值不会保错,返回None
get(key,default)--->value 如果能取到值返回字典中的值,否则返回default
1 print(dic2.get('里',89))
#删除
#del()
#字典的内置函数:删除
#pop(key,[default])--->根据key删除字典中的键值对,返回value
#pop的默认值是在删除的时候没有找到对应的key
#popitem():随机删除字典中的键值对,一般是从末尾删除
#clear() 同列表的clear()
#其他的内置函数:
#update(): [] + [] 合并操作
#fromkeys(seq,[default]):将seq转成字典的形式,如果没有指定的value
#则用None,如果指定default则用default代替None这个值
1 dic2={'里':98,'是':87,'键':99} 2 del dic2['里'] 3 print(dic2) 4 5 dic3={'里':98,'是':87,'键':99,'赋':67,'动':57} 6 r=dic3.pop('键') 7 print(r) 8 print(dic3) 9 r=dic3.pop('张','字典中没有') 10 print(r) 11 r=dic3.popitem() 12 print(r) 13 print(dic3) 14 dic3.clear() 15 print(dic3) 16 17 dic4={1:'lily',2:'jack',3:'july'} 18 dic5={6:'helli',7:'delre',8:'tinna'} 19 r=dic4.update(dic5) #合并dic4 dic5 20 print(r) 21 print(dic4) 22 23 list5=['a','b','c','d'] 24 new_dic=dict.fromkeys(list5,10) 25 print(new_dic)