del函数python del函数的用法

Python中关键字del用法有哪些?

__del__()方法

专业从事成都网站设计、网站制作,高端网站制作设计,微信小程序,网站推广的成都做网站的公司。优秀技术团队竭力真诚服务,采用H5建站+CSS3前端渲染技术,成都响应式网站建设公司,让网站在手机、平板、PC、微信下都能呈现。建站过程建立专项小组,与您实时在线互动,随时提供解决方案,畅聊想法和感受。

python_del用法:

import time

class Animal(object):

# 初始化方法

# 创建完对象后会自动被调用

def __init__(self, name):

print('__init__方法被调用')

self.__name = name

# 析构方法

# 当对象被删除时,会自动被调用

def __del__(self):

print("__del__方法被调用")

print("%s对象马上被干掉了..."%self.__name)

# 创建对象

dog = Animal("哈皮狗")

# 删除对象

del dog

cat = Animal("波斯猫")

cat2 = cat

cat3 = cat

print("---马上 删除cat对象")

del cat

print("---马上 删除cat2对象")

del cat2

print("---马上 删除cat3对象")

del cat3

print("程序2秒钟后结束")

time.sleep(2)

python中del 语句的用法?

python的del不同于C的free和C++的delete。

由于python都是引用,而python有GC机制,所以,del语句作用在变量上,而不是数据对象上。

del语句删除一些对象的引用,而不是数据。

python中del函数的用法

首先我们要清楚python中的del函数不同于C的free和C++的delete。

由于python都是引用,而python有GC机制,所以,del语句作用在变量上,而不是数据对象上。

我们来看一个例子:

del删除的是变量,而不是数据。

我们再来看:

推荐教程:python教程以上就是小编分享的关于python中del函数的用法的详细内容希望对大家有所帮助,更多有关python教程请关注环球青藤其它相关文章!

python中的delete函数是如何使用的?

我要纠正推荐答案中的说法!

del并不是用来“删除引用指向的内存空间”,python中的del和c++中的delete是完全两个概念,不要误人子弟。。

一般来讲,del是用来删除变量的引用的,例如a = 1; del a,这里a是对1这个值的引用(python中所有的变量都可视作引用),而del a就是删除这一引用关系,也就是说,1不再被a这个变量引用了,同时a这个变量名也从变量表中剔除了。

如果还是不太清楚,我举这个例子你就明白了:

a = object()

b = a

del a

print b

print a # 该句会报a未定义的异常

这段代码中,a引用了一个新对象object(),而b=a使得b也引用了这个对象,a和b虽然是两个变量,但它们引用的是同一个对象,有点类似于c++中的两个指针指向同一个对象。

而后面del a仅仅只是把a这个变量对object()的引用删掉了,同时a的变量名也失效了,但并不表示object()这个对象被删除了,它还在,并且b还引用着它呢。从后面print b能正常输出就可以看出这一点。

python的内存释放采用的是引用计数机制,也就是当一个对象没有任何引用它的变量了,那么它就会自动被释放,无需人工干预。

此外,del对于不同的对象也会有不同的功能,这取决于对象本身对__del__系统方法的实现。例如一个列表a = [1,2,3],del a[0]表示将列表的首项删除,此时a就变成[2,3]了。如果是自定义的对象,那del的功能更是可以定义成你想要的任何样子,详情请参考python帮助中的__del__词条。


当前题目:del函数python del函数的用法
标题网址:http://azwzsj.com/article/doohdpe.html