每个类都有一个默认的__init__()方法,如果在定义类时显式地定义了__init__()方法,则创建对象时Python解释器会调用显式定义的__init__()方法;如果定义类时没有显式定义__init__()方法,那么Python解释器会调用默认的__init__()方法。
__init__()方法按照参数的有无(self除外)可分为有参构造方法和无参构造方法,无参构造方法中可以为属性设置初始值,此时使用该方法创建的所有对象都具有相同的初始值。若希望每次创建的对象都有不同的初始值,则可以使用有参构造方法实现。
例如,定义一个类Information,在该类中显式地定义一个带有3个参数的__init__()方法和info()方法,示例代码如下:
上述代码中首先定义了一个包含三个参数的Information类,然后通过参数name与sex为属性name和sex进行赋值,最后在info()方法中访问属性name和sex的值。
因为定义的构造方法中需要接收两个实际参数,所以在实例化Information类对象时需要传入两个参数,示例代码如下:
运行代码,结果如下所示:
注意:
前面在类中定义的属性是类属性,可以通过对象或类进行访问;在构造方法中定义的属性是实例属性,只能通过对象进行访问。
Python中如何使用构造方法定义类?通过上面的详细介绍你了解了吗?如果大家正在学习python知识,但是苦于没有人指导,那么可以添加我们的qq群-790693323,点击添加(加群备注:领资料)不仅可以领取python学习资料,并且群内还有专业的老师定期解答大家的问题,想要学习python的小伙伴,不要错过。
相关文章
关注千锋学习站小程序
随时随地免费学习课程
扫一扫快速进入
千锋移动端页面
扫码匿名提建议
直达CEO信箱