在Python中,__new__()
和__init__()
是两个不同的方法,它们在对象创建过程中扮演着不同的角色。
__new__()
是一个静态方法,它负责创建并返回对象实例。在对象初始化之前,__new__()
会被调用。因此,如果您重写__new__()
方法,那么在创建对象后,必须调用__init__()
方法来初始化对象。
__init__()
方法是类的初始化方法,它在__new__()
创建出对象之后,并且在__new__()
方法返回对象实例之前被调用。这意味着__init__()
负责为对象设置初始属性值。
因此,在__new__()
之后调用__init__()
是因为这两个方法在对象创建和初始化过程中各自扮演着不同的角色。__new__()
负责创建对象,而__init__()
负责初始化对象。这种分离允许开发人员更灵活地控制对象的创建和初始化过程。
总结一下,在__new__()
之后调用__init__()
是因为这两个方法在对象创建和初始化过程中各自扮演着不同的角色。__new__()
负责创建对象,而__init__()
负责初始化对象。这种分离允许开发人员更灵活地控制对象的创建和初始化过程。
领取专属 10元无门槛券
手把手带您无忧上云