一、pop()方法删除key
Python字典是一种无序的映射数据类型,通过键值对的形式进行存储,可以使用键来快速找到对应的值。在某些情况下,我们可能需要在字典中删除某个键,这时候就可以使用Python字典提供的pop()方法。
pop()方法用于删除字典中指定的键,并返回该键对应的值。使用该方法时需传入一个参数,即要删除的键的名称。
# 定义一个字典
fruit_dict = {
'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
res = fruit_dict.pop('apple')
# 输出删除后的字典和返回的值
print(fruit_dict) # {'banana': 20, 'orange': 30}
print(res) # 10
注:若要删除的键不存在,则pop()会报错;若要删除的键不存在,可设置默认值,避免报错。
二、del删除字典中key-value
Python字典中的删除操作还可以使用del语句。del语句可以用于删除字典中的键值对。
# 定义一个字典
fruit_dict = {
'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
del fruit_dict['apple']
# 输出删除后的字典
print(fruit_dict) # {'banana': 20, 'orange': 30}
三、dict comprehension删除key-value
另外一种Python中删除字典key的方式是使用字典推导式。字典推导式是一种创建字典的语法,它可以根据已有的字典来创建一个新的字典。通过将需要删除的键从原字典中排除,就可以实现删除操作。
# 定义一个字典
fruit_dict = {
'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
fruit_dict = {
k: v for k, v in fruit_dict.items() if k != 'apple'}
# 输出删除后的字典
print(fruit_dict) # {'banana': 20, 'orange': 30}
四、使用filter()函数删除key-value
使用filter()函数可以过滤掉不需要的键值对,来实现删除操作。
# 定义一个字典
fruit_dict = {
'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
fruit_dict = dict(filter(lambda x: x[0] != 'apple', fruit_dict.items()))
# 输出删除后的字典
print(fruit_dict) # {'banana': 20, 'orange': 30}
五、使用字典的popitem()方法删除最后一个元素
popitem()方法用于删除字典中的最后一个键值对,并返回该键值对。在Python3.7之前,字典是无序的,因此,popitem()会删除任意一个键值对。而在Python3.7及以后的版本中,字典是有序的,popitem()会删除最后一个键值对。
# 定义一个字典
fruit_dict = {
'apple': 10, 'banana': 20, 'orange': 30}
# 删除最后一个元素
fruit_dict.popitem()
# 输出删除后的字典
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
print(fruit_dict) # {'apple': 10, 'banana': 20}