1.一个简单的字典
a = {
'姓名': '姚明', # 键(key):值(value)
'年龄': 23, # 键必须是唯一的,不能重复,空字典直接用{}表示
'性别': '男'
}
b = {}
print(a)
print(type(a))
print(type(b))
2.字典查询
使用键名查询
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
print('姓名',a['姓名'])
使用get方法查询
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
print(a.get('姓名')) # get方法返回键值,无则返回默认值
print(a.get('多大'))
print(a.get('多大',18))
3.字典的修改、增加
通过键名修改值,如果键名存在则修改原始数据,如果不存在就添加新的键值对
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
a['姓名'] = '张硕'
print(a)
a['籍贯'] = '淮安'
print(a)
使用内置方法setdefault增加键值对
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
a.setdefault('籍贯','淮安')
print(a)
使用内置方法update修改字典
1.如果新字典中的键名与旧字典中键名一致,那么新的值会覆盖旧的值;
2.如果新字典中的键名存在但是旧字典中没有的则将新的键值对赋给旧字典;
3.新字典中不存在但是旧字典中存在的键值对依旧保留。
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
b = {
'姓名': '张硕',
'年龄': 23,
'籍贯': '淮安'
}
a.update(b)
print(a)
4.字典的删除
del删除两种用法:1.通过键名删除指定键值对;2.直接删除整个字典
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
del a['性别']
del a
print(a)
clear直接将字典清空留下一个空字典
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
a.clear()
print(a)
pop指定键名删除键值对
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
a.pop('姓名')
print(a)
5.字典的复制
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
b = a.copy() # 如果字典内部元素值还是字典,元素内部依然引用
print(a)
print(b)
6.使用fromkeys创建一个新字典
a = {'name','age','sex'} # 序列中的元素作为新字典的键
b = dict.fromkeys(a,20) # 第二个参数作为新字典键的初始值
print(b)
7.字典的所有键名、值
# keys 返回字典中所有的键
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
print(a.keys())
print('是否存在姓名?','姓名' in a.keys()) # 与in搭配,判断字典中是否存在键
print('是否存在多大?','多大' in a.keys())
# values返回字典中所有值
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
print(a.values())
8.字典遍历
# items返回字典列表
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
print(a.items()) # 返回值是一个列表
a = {
'姓名': '姚明',
'年龄': 23,
'性别': '男'
}
for k,v in a.items():
print(k,":",v) # 返回键值对