发布网友 发布时间:2022-04-20 11:41
共2个回答
懂视网 时间:2022-04-18 06:47
python魔法方法:__init__( )方法,被称为构造方法。__init__()方法的魔力体现在只要实例化一个对象,这个方法就会在对象被创建时自动调用。实例化对象时是可以传入参数的,这些参数会自动传入__init__()方法中,可以通过重写这个方法来自定义对象的初始化操作。
总结:__init__()方法是一个特殊的方法,在对象实例化时会被调用,__init__()方法的作用是初始化。
例1:
class Myclass: i = 123 def __init__(self,friend): self.friend = friend def func(self,myself): #带有参数的类方法 self.myself = myself return self.myself +"say hello to " + self.friend use_class = Myclass("xiaoming") print("调用类的属性:",use_class.i) print("调用类的方法:", use_class.func("xiaohong"))
输出结果:
#调用类的属性: 123 #调用类的方法: xiaohongsay hello to xiaoming
热心网友 时间:2022-04-18 03:55
不行,一个class只能有一个用于构造对象的__init__函数
但python中的变量是无类型的,因此传给__init__的参数可以是任何类型
python中的函数参数在定义时可以有默认值,可以让__init__函数接受多个参数,在后面的一些参数给出默认值的方法让__init__接受不同个数的参数,并且执行类型检查执行不同的代码,用上述方法实现类的构造函数的多态性