在 Python 中迭代时从字典中删除项目

pythonserver side programmingprogramming更新于 2025/11/23 5:32:17

Python 字典是一个无序、可更改且有索引的集合。它们具有键和值,每个项目都使用键引用。在本文中,我们将探讨从字典中删除项目的方法。

使用 del 和键

在这种方法中,我们捕获需要删除的键值。一旦我们应用 del 函数,这些键的键值对就会被删除。

示例

# 给定字典
ADict = {1:'Mon',2:'Tue',3:'Wed',4:'Thu',5:'Fri'}

# 获取值为 2,3 的键。
to_del = [key for key in ADict if key in(2,3)]

# 删除键
for key in to_del: del ADict[key]

# 新建字典
print(ADict)

输出

运行上述代码得到以下结果 −

{1: 'Mon', 4: 'Thu', 5: 'Fri'}

使用带键的列表

我们可以创建一个包含字典中键的列表,也可以使用条件表达式来选择要用于删除的键。在下面的例子中,我们仅通过将除法的余数与等于零的二进行比较来考虑具有偶数值的键。

示例

# 给定字典
ADict = {1: 'Mon', 2: 'Tue', 3: 'Wed',4:'Thu',5:'Fri'}

# 获取具有偶数值的键
for key in list(ADict):
if (key%2) == 0:
del ADict[key]

# 新建字典
print(ADict)

输出

运行上述代码得到以下结果 −

{1: 'Mon', 3: 'Wed', 5: 'Fri'}

使用项目删除

除了键之外,我们还可以使用字典的项目来删除值。但在选择项目后,我们必须间接使用键来选择要删除的项目。

示例

# 给定字典
ADict = {1: 'Mon', 2: 'Tue', 3: 'Wed',4:'Thu',5:'Fri'}

NewDict = []
# 获取具有偶数值的键
for key,val in ADict.items():
if val in('Tue','Fri'):
NewDict.append(key)

for i in NewDict:
del ADict[i]

# 新建字典
print(ADict)

输出

运行上述代码得到以下结果−

{1: 'Mon', 3: 'Wed', 4: 'Thu'}

相关文章


有用资源