# 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