在Python中有些方法名、属性名的前后都添加了双下划线,这种方法、属性通常都属于Python的特殊方法和特殊属性,开发者可以通过重写这些方法或者直接调用这些方法来实现特殊的功能。其实前面见过的构造方法__init__() 就是一种特殊方法,开发者可以通过重写类中的__init__方法实现 ...
del 方法用于销毁Python对象 在任何Python对象将被系统回收的时候,系统都会自动调用这个方法。但是不要以为对一个变量执行del操作,该变量引用的对象就会被回收,当然不是,如果有多个变量引用它,del其中一个变量是不会回收该对象的。 栗子如下: 控制台打印如下: 解释:第 行代码重写了Item类的 del 方法,当系统将要回收Item时,系统会自动调用Item对象的 del 方法。上面 ...
2019-07-14 13:01 0 1189 推荐指数:
在Python中有些方法名、属性名的前后都添加了双下划线,这种方法、属性通常都属于Python的特殊方法和特殊属性,开发者可以通过重写这些方法或者直接调用这些方法来实现特殊的功能。其实前面见过的构造方法__init__() 就是一种特殊方法,开发者可以通过重写类中的__init__方法实现 ...
class Dog(): def __del__(self): print("---对象要死掉了--") dog1 = Dog() #对象dog1 与对象dog2指向同一个对象 dog2 = dog1 ...
在Python 的自带函数中 del 函数是一个非常特殊但是又非常实用的函数(它可以直接将变量从内存中删除) 可以直接使用del 删除字典或者list的元素 也可以将某个变量整体删除 ...
析构方法 此方法一般无须定义,因为Python是一门高级语言,程序员在使用时无需关心内存的分配和释放,因为此工作都是交给Python解释器来执行,所以,析构函数的调用是由解释器在进行垃圾回收时自动触发执行的。 示例代码 ...
对象的__del__是对象在被gc消除回收的时候起作用的一个方法,它的执行一般也就意味着对象不能够继续引用。 示范代码如下: ? 1 2 3 ...
类中的特殊方法 一般说来,特殊的方法都被用来模仿某个行为。例如,如果你想要为你的类使用x[key]这样的索引操作(就像列表和元组一样),那么你只需要实现__getitem__()方法就可以了。想一下,Python ...
我们知道,Python 通过调用 __init__() 方法构造当前类的实例化对象,而本节要学的 __del__() 方法,功能正好和 __init__() 相反,其用来销毁实例化对象。事实上在编写程序时,如果之前创建的类实例化对象后续不再使用,最好在适当位置手动将其销毁,释放其占用的内存空间 ...
模块的特殊属性 __doc__ 模块的说明文档 __all__ 指明模块希望被使用的属性、类和方法 __file__ 模块所在路径 类的特殊 ...