1、python中的魔法方法
__init__等同于c++中的构造函数。该函数中不能有返回。
class Rectangle:
def __init__(self,x,y):
self.x = x
self.y = y
self.x是实例化类之后的实例对象的局部变量;x是传入的参数
__new__()才是函数运行时会被调用的方法。通常是返回一个实例化对象。
# 类继承不可改变的类,故需要重写__new__():
class Capstr(str):
def __new__(str, string):
string = string.upper() # 内置函数
return str.__new__(cls,string)
# 该函数实现的功能是把所有小写变为大写
2、析构方法: __del__(self):
当对象被销毁时就会自动调用该函数。一个垃圾回收机制。(所有该类的对象全删除才会调用)