Python 中 'del' 和 'pop' 的区别

2024 年 8 月 29 日 | 4 分钟阅读

在本文中,您将了解 del 和 pop 之间的区别。但在讨论区别之前,您必须了解 Python 中 del 和 pop 的用法以及它们的示例。

Python 中的 del 是什么?

"del" 是一个内置的 Python 语句,用于删除对象或对象的引用。它可以用于删除 Python 中的变量、列表项、字典键值对或任何其他对象。

示例

以下是如何使用 del 删除列表项的示例

输出

[1, 2, 4, 5]

说明

在此示例中,del 语句用于删除 my_list 列表中的第三个项。结果是一个只包含剩余项的列表:[1, 2, 4, 5]

Pop 是什么?

Python 有一个名为 "pop" 的方法,可用于列表和字典。当它用于列表时,它会移除列表的最后一个项,然后返回该项。当它用于字典时,它会移除并返回与给定键关联的值。

示例

以下是如何使用 pop 移除列表中最后一个项的示例

输出

[1, 2, 3, 4]
5

说明

在此示例中,pop 方法用于移除 my_list 列表中的最后一个项并返回其值。结果是一个移除了最后一项的列表:[1, 2, 3, 4]。被弹出项(5)的值存储在 popped_item 变量中并打印到控制台。

Python 中 Del 和 Pop 的主要区别

delpop 的主要区别在于,del 是一个删除对象或对象引用的语句,而 pop 是一个移除并返回列表或字典中特定项的方法。在 Python 中,"del" 可用于删除任何对象,而 "pop" 仅适用于列表和字典。关于 Python 中 "del""pop" 之间的一些区别的更多信息

  • del 是一个语句,而不是函数或方法,因此它不返回任何内容。它只是从内存中移除一个对象。如果您尝试访问已被 del 删除的变量或对象,您将收到一个 NameError
  • pop 是一个可与列表字典一起使用的方法。当它用于列表时,默认情况下它会移除并返回最后一项。如果为 pop 提供索引参数,它将改用移除并返回该索引处的项。当它用于字典时,pop 会移除并返回指定键关联的值。
  • del 可用于删除 Python 中的任何对象,包括变量、列表或字典中的项以及整个对象。以下是一些示例

示例 1

输出

NameError: name 'x' is not defined

示例 2

输出

[1, 3]

示例 3

输出

{'a': 1, 'c': 3}

示例 4

  • pop 仅适用于列表字典,并且只能用于从这些数据类型中移除并返回项。以下是一些示例

示例 1

输出

3
[1, 2]

示例 2

输出

2
[1, 3]

示例 3

输出

2
{'a': 1, 'c': 3}
  • del 可通过指定开始和结束索引来用于删除列表的切片。

示例

输出

[1, 4, 5]
  • 当您尝试从空列表中 pop 项时,您将收到一个 IndexError。为避免此问题,您可以在弹出项之前检查列表的长度
  • 如果字典中找不到该键,"pop" 还可以使用第二个参数,该参数定义要返回的默认值。

示例

输出

0
  • 您还可以将 popitem() 与字典一起使用,以从字典中移除并返回一个键值对。由于字典是无序的,因此此方法会移除并返回字典中的任何项。这是一个示例

示例

输出

('c', 3)
{'a': 1, 'b': 2}