Python学习之==>字典

1、特点

1 取数据方便
2 速度快
3 key-value格式,类似Jason格式
4 infos = {'name':'Jack','sex':'','age':'22','addr':'地球'}

2、查询元素

1 # 通过key查询value
2 infos = {'name':'Jack','sex':'','age':'22','addr':'地球'}
3 print(infos.get('name'))
4 print(infos.get('phone'))     # 取不到key的话,返回None
5 print(infos.get('name',110))  # 能取到key,后面的110不生效
6 print(infos.get('phone',110)) # 取不到key的话,默认返回110
7 print(infos['name'])
8 print(infos['phone'])         # 如果key不存在,会报错

3、增加元素

1 # 增加元素
2 infos = {'name':'Jack','sex':'','age':'22','addr':'地球'}
3 infos['Phone'] = 12877619908   # 增加一个key
4 infos.setdefault('家乡','深圳')
5 infos.setdefault('家乡','广东') # 如果key存在的话,不会修改原来key的值
6 print(infos)

4、 修改元素

# 修改元素
infos = {'name':'Jack','sex':'','age':'22','addr':'地球'}
infos['addr'] = 'guangdong' # key存在时,修改原来key的值,key不存在时,添加元素
print(infos)

5、删除元素

1 # 删除元素
2 infos = {'name':'Jack','sex':'','age':'22','addr':'地球'}
3 infos.pop('addr')   # 指定key删除
4 del infos['name']   # 指定key来删除
5 infos.popitem()     # 随机删除一个key
6 infos.clear()       # 清空字典

 6、合并字典

1 a = {"K1":"V1"}
2 b = {"K2":"V2"}
3 a.update(b)    #将b字典的元素加入到a字典里面
4 print(a)

7、字典常用方法

1 infos = {'name':'Jack','sex':'','age':'22','addr':'地球'}
2 infos.keys()   # 获取到字典所有的key
3 infos.values() # 获取到字典所有的value
4 infos.items()  # 获取到字典所有的key-value

9、循环字典

 1 people = {
 2     '天宇':18,
 3     '张萌':20,
 4     '任钱':35
 5 }
 6 # 直接循环一个字典的话,循环的是字典的key
 7 for p in people:
 8     print(p)
 9 # 循环的时候,同时取key和value
10 for k,v in people.items():
11     print(k,'===>',v)

10、练习:注册小程序

 1 # 字典小练习:注册小程序
 2 # (1)使用字典存放所有的账号和密码
 3 # (2)用户名和密码不能为空
 4 # (3)判断用户名是否已注册
 5 # (4)判断两次输入的密码是否一致
 6 # (5)注册成功将用户名和密码写入字典
 7 
 8 users = {
 9     'niuhanyang':'123456',
10     'jack':'456789',
11     'tony':'135790'
12 }
13 username = input('请输入用户名:').strip()
14 passwd = input('请输入密码:').strip()
15 cpasswd = input('请输入密码:').strip()
16 if username not in users:
17     if username != '' and passwd != '' and cpasswd != '':
18         if passwd == cpasswd:
19             users[username] = passwd
20             print(users)
21             print('注册成功')
22         else:
23             print('两次密码输入不一致')
24     else:
25         print('用户名或密码不能为空')
26 else:
27     print('该用户已存在')
原文地址:https://www.cnblogs.com/L-Test/p/8824056.html