1
5.10Python del删除语句
Posted by 撒得一地 on 2016年4月13日 in python教程
上一篇: 5.9Python pass 语句
下一篇: 5.11Python 列表推导式——轻量级循环
下一篇: 5.11Python 列表推导式——轻量级循环
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解释器会负责内存的回收)。
上一篇: 5.9Python pass 语句
下一篇: 5.11Python 列表推导式——轻量级循环
下一篇: 5.11Python 列表推导式——轻量级循环
1 Comment
赞一个