字典
声明
d1 = dict() #声明一个空字典
d2 = {'key': 'value', 'key2': 'value2'} #声明一个非空字典
数据操作————
增加数据
1、key和value都是基本数据类型,都是字符串
d = dict()
d['key'] = 'value'
print(d)
运行结果:{‘key’: ‘value’}
2、 key是一个字符串,value是一个列表
d = dict()
d['admin'] = ['admin', '123456']
print(d)
运行结果:{‘admin’: [‘admin’, ‘123456’]}
3、 key是一个字符串,value是一个字典
d = dict()
d['manager'] = {'username': 'manager', 'password': '123'}
print(d)
运行结果:{" manager" : {‘username’: ‘manager’, ‘password’: ‘123’}}
4、setdefault
如果设置的key值在字典中不存在的~ 新增数据
否则什么都不做
d = {'key': 'value', 'admin': ['admin', '123456']}
d.setdefault('admin', 'Administrator')
print(d)
运行结果:{‘key’: ‘value’, ‘admin’: [‘admin’, ‘123456’]}
d.setdefault('root', '123456')
print(d)
运行结果:{‘key’: ‘value’, ‘admin’: [‘admin’, ‘123456’],‘root’: ‘123456’}
查询数据
1、通过key直接查询对应的value值
d = {'key': 'value', 'admin': ['admin', '123456'],'root': '123456'}
print(d['admin'])
print(d.get('root'))
运行结果:
[“admin”, “123456”]
“123456”
2、查询字典中的key值
print(d.keys())
3、查询字典中所有的value值
print(d.values())
4、查询字典中的所有item[条目、键值对]值
print(d.items())
5、循环遍历keys()
for x in d.keys():
print(x)
6、循环遍历键-值对
for k, v in d.items():
print(k, ':', v)
修改数据
1、直接赋值修改
d = {"admin": "123456"}
d['admin'] = 'admin'
print(d)
运行结果:{“admin”: “admin”}
2、update: 更新字典
d1 = {"admin": "tom", "password": "123"}
d2 = {"admin": "jerry", "password": "123"}
d1.update(d2)
print(d1)
运行结果:{‘admin’: ‘jerry’, ‘password’: ‘123’}
3、copy:复制字典
d1 = {"admin": "tom", "password": "123"}
d2 = d1.copy()
print(d2)
d1["admin"] = "jimi"
print(d1)
print(d2)
运行结果:
{‘admin’: ‘tom’, ‘password’: ‘123’}
{‘admin’: ‘jimi’, ‘password’: ‘123’}
{‘admin’: ‘tom’, ‘password’: ‘123’}
4、fromkeys: 以序列中元素作为键创建一个新字典
seq = ["1", "2", "3"]
d = dict.fromkeys(seq)
print(d)
d = dict.fromkeys(seq, "True")
print(d)
运行结果:
{‘1’: None, ‘2’: None, ‘3’: None}
{‘1’: ‘True’, ‘2’: ‘True’, ‘3’: ‘True’}
删除数据
1、删除一个指定key值的键-值对数据
d = {"admin": "123456", "manager": "123"}
d.pop("admin")
print(d)
运行结果:{“manager”: “123”}
2、随机删除一个键-值对数据
d = {"admin": "123456", "manager": "123"}
print(d.popitem())
print(d)
运行结果:{“admin”: “123456”}
3、清空字典
d.clear()
print(d)
运行结果:{}