一、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()
# 输出删除后的字典
print(fruit_dict) # {'apple': 10, 'banana': 20}