您的位置:首页 > 编程语言 > Python开发

Python中__new__与 __init__的区别

2020-04-02 18:57 411 查看

1.用法不同

__new__用于创建实例,所以该方法是在实例创建之前被调用,它是类级别的方法,是个静态方法;

__init__用于初始化实例,所以该方法是在实例对象创建后被调用,它是实例级别的方法,用于设置对象属性的一些初始值。

2.传入参数不同:

__new__至少有一个参数cls,代表当前类,此参数在实例化时由Python解释器自动识别;

__init__至少有一个参数self,就是这个__new__返回的实例,__init__在__new__的基础上完成一些初始化的操作。

3.返回值不同:

__new__必须有返回值,返回实例对象;

__init__不需要返回值。

  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
Python_mjj 发布了6 篇原创文章 · 获赞 8 · 访问量 366 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: