由于字典属于可变序列,所以我们可以任意操作字典中的键值对(key-value 对)。Python 中,常见的字典操作有以下几种:
1:向现有字典中添加新的键值对。
2:修改现有字典中的键值对。
3:从现有字典中删除指定的键值对。
4:判断现有字典中是否存在指定的键值对。
初学者要牢记,字典中常常包含多个键值对,而 key 是字典的关键数据,字典的基本操作都是围绕 key 值实现的。
Python字典添加键值对
如果要为 dict 添加键值对,只需为不存在的 key 赋值即可。实现此操作的语法格式如下:
dict[key] = value
此格式中,各个参数的含义如表 1 所示。
表 1 Python 字典添加键值对语法参数
参数
含义
dict
表示字典名称。
key
表示要添加元素的键。注意,既然是添加新的元素,那么就要保证此元素的键和字典中现有元素的键互不相同,如果键重复,则为修改。
value
表示要添加数据的值,只要是 Python 支持的数据类型就可以。
例如,下面代码演示了在现有字典 a 的基础上,添加新元素的过程:
a = {'数学': 95}
print(a)
# ‘语文’K值唯一,添加新键值对
a['语文'] = 89
print(a)
# ‘英语’K值唯一,添加新键值对
a['英语'] = 90
print(a)
运行结果为:
{'数学': 95}
{'数学': 95, '语文': 89}
{'数学': 95, '语文': 89, '英语': 90}
Python字典修改键值对
“修改键值对”并不是同时修改某一键值对的键和值,而只是修改某一键值对中的值。
由于在字典中,各元素的键必须是唯一的,因此,如果新添加元素的键与已存在元素的键相同,原来键所对应的值就会被新的值替换掉。例如:
a = {'数学': 95, '语文': 89, '英语': 90}
# ‘语文’K值不唯一,修改字典
a['语文']=100
print(a)
运行结果为:
{'数学': 95, '语文': 100, '英语': 90}
可以看到,字典中没有再添加一个 {'语文':100} 键值对,而是对原有键值对 {'语文': 89} 中的值做了修改。
Python字典删除键值对
如果要删除字典中的键值对,还是可以使用 del 语句。例如:
# 使用del语句删除键值对
a = {'数学': 95, '语文': 89, '英语': 90}
# 字典的删除是根据K值进行删除
del a['语文']
del a['数学']
print(a)
运行结果为:
{'英语': 90}
判断字典中是否存在指定键值对
如果要判断字典中是否存在指定键值对,首先应判断字典中是否有对应的键。判断字典是否包含指定键值对的键,可以使用 in 或 not in 运算符。
需要指出的是,对 dict 而言,in 或 not in 运算符都是基于 key 来判断的。
例如如下代码:
a = {'数学': 95, '语文': 89, '英语': 90}
# 判断 a 中是否包含名为'数学'的key
print('数学' in a) # True
# 判断 a 是否包含名为'物理'的key
print('物理' in a) # False
运行结果为:
True
False
通过 in(或 not in)运算符,我们可以很轻易地判断出现有字典中是否包含某个键,如果存在,由于通过键可以很轻易的获取对应的值,因此很容易就能判断出字典中是否有指定的键值对。