Python del 语句

Python 的 del 关键字用于删除对象。其语法是

# delete obj_name
del obj_name

这里,obj_name 可以是变量、用户定义的对象、列表、列表中的项、字典等。


示例 1:删除用户定义的对象


class MyClass:
    a = 10
    def func(self):
        print('Hello')

# Output: 
print(MyClass)

# deleting MyClass
del MyClass

# Error: MyClass is not defined
print(MyClass)	

在程序中,我们使用 del MyClass 语句删除了 MyClass


示例 2:删除变量、列表和字典


my_var = 5
my_tuple = ('Sam', 25)
my_dict = {'name': 'Sam', 'age': 25}

del my_var
del my_tuple
del my_dict

# Error: my_var is not defined
print(my_var)

# Error: my_tuple is not defined
print(my_tuple)

# Error: my_dict is not defined
print(my_dict)

示例 3:从列表中删除项、切片

del 语句可用于删除给定索引处的项。它还可以用于从列表中删除切片

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# deleting the third item
del my_list[2]

# Output: [1, 2, 4, 5, 6, 7, 8, 9]
print(my_list)

# deleting items from 2nd to 4th
del my_list[1:4]

# Output: [1, 6, 7, 8, 9]
print(my_list)

# deleting all elements
del my_list[:]

# Output: []
print(my_list)

示例 4:从字典中删除键值对

person = { 'name': 'Sam',
  'age': 25,
  'profession': 'Programmer'
}

del person['profession']

# Output: {'name': 'Sam', 'age': 25}
print(person)

推荐阅读Python 字典


del 与元组和字符串

注意:您不能删除 Python 中元组和字符串的项。这是因为元组和字符串是不可变的;对象一旦创建就不能更改。

my_tuple = (1, 2, 3)

# Error: 'tuple' object doesn't support item deletion
del my_tuple[1]

但是,您可以删除整个元组或字符串。


my_tuple = (1, 2, 3)

# deleting tuple
del my_tuple
你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战