沈阳高端网站建设,网站中的文字滑动怎么做,什么网站可以做告白的网页版,服装网站网络建设和硬件资源在理解__init__方法之前,我们需要搞明白,什么时候才需要用到的这个方法什么是__init__#xff1f;__init__方法在python中是类的初始化#xff0c;通俗来讲#xff0c;就是每次只要你去创建一个类的实例对象的时候#xff0c;这个对象就会有初始化相关的属性什么时候需要去…在理解__init__方法之前,我们需要搞明白,什么时候才需要用到的这个方法什么是__init____init__方法在python中是类的初始化通俗来讲就是每次只要你去创建一个类的实例对象的时候这个对象就会有初始化相关的属性什么时候需要去定义__init__在我们构建的类的时候可以看看这个属性或者这个参数后面的每个方法都需要用到如果是那就需要__init__例如我们定义logging类的时候需要定义日志格式输出级别。这些其实我们在开始的时候就定义好然后其他方法直接去用就可以了那这个时候我们就需要用到__init__再抽象出来比如工厂现在需要制造一批红色铅笔那我是直接在生产前把颜色直接灌注到材料里面还是先生产一个没有颜色的铅笔然后再多一道工序刷上红色油漆最终得到一个红色铅笔呢很明显是在生产前直接灌注对应的红色颜料到机器这样只要启动按钮生产出来的就是红色铅笔是不是很方便在结合__init__这个时候我就在__init__方法里面定义颜色为红色那么每次创建铅笔的实例对象的时候这个铅笔就是红色。这个就是__init__再来一个代码大家来看看1. 不用init()方法定义类 定义一个矩形的类目的是求周长和面积。class Rectangle():def getPeri(self,a,b):return (a b)*2def getArea(self,a,b):return a*brect Rectangle()print(rect.getPeri(3,4))print(rect.getArea(3,4))得到的结果是14 12从上例中可以看到我们在类中并没有定义init()方法但是也能够得到类似的要求结果返回了矩形实例rect的周长及面积。但是我定义了一个矩形按理来说它的属性应该是它的长、宽。但是它竟然没有。这就是没有定义init()的原因了。并且在实例化对象的时候rect Rectangle()参数为空没有指定a、b的值只有在调用函数的时候才指定了。且类中定义的每个方法的参数都有a、b这显然浪费感情在类中直接指定方法就可以了。2、用init()方法定义类 上述同样的例子采用init()方法定义类如下class Rectangle():def __init__(self,a,b):self.a aself.b bdef getPeri(self):return (self.a self.b)*2def getArea(self): return self.a * self.brect Rectangle(3,4)print(rect.getPeri())print(rect.getArea())print(rect.__dict__)out14 12 {a: 3, b: 4}从上面代码可以看出我们只需要在创建对象的时候传入对应的参数这个类下面的所有方法都可以直接用不需要再做一次传递参数