1

5.10Python del删除语句

Posted by 撒得一地 on 2016年4月13日 in python教程

del语句在Python下用法非常丰富,del语句不仅可以用来删除普通变量,还可以用来删除序列和字典元素。它不仅会移除一个对象的引用,还会移除那个名字本身。

del语句基本语法

del 变量名

实例,使用del方法删除一个普通变量:

>>> x = 123
>>> x
123
>>> del x
>>> x
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'x' is not defined

实例,使用del语句删除列表中的某个元素:

>>> list = [1,2,3,4]
>>> list
[1, 2, 3, 4]
>>> del list[3] #删除索引为3的数,索引从0开始算
>>> list
[1, 2, 3]

实例,使用del方法删除字典中的键值对:

>>> d = dict(name="psz",age=18)
>>> d
{'name': 'psz', 'age': 18}
>>> del d['age']
>>> d
{'name': 'psz'}

上面的几个例子看起来很简单,但在某些情况下理解起来有些困难。例如,下面的例子中,x和y都指向同一个列表:

>>> x = ['hello','world']
>>> y = x
>>> x
['hello', 'world']
>>> y
['hello', 'world']

有人会认为,使用del删除x后,y也就随之消息,但并非如此:

>>> del x
>>> y
['hello', 'world']

为什么会这样?x和y都指向同一个列表。但是使用del删除x并不会影响y。原因就是删除的只是名称,而不是列表本身(值)。事实上,在Python中是没有办法删除值的(也不需要过多考虑删除值的问题,因为在某个值不再使用的时候,Python解释器会负责内存的回收)。

上一篇:

下一篇:

相关推荐

1 Comment

Comments are closed. Would you like to contact the author directly?
网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.