06.1 __new__ 和 __init__区别

# __new__ 和 __init__ 区别

class User:
    """类,生成类时的逻辑"""
    def __new__(cls, *args, **kwargs):
        print("__new__")
        
        # 返回对象
        return super().__new__(cls)

    """对象"""
    def __init__(self):
        print("__init__")

# new 是用来控制对象的生成过程,在生成对象之前
# init 是用来完善对象的
# new 方法不返回对象,则不会调用init对象

if __name__ == '__main__':
    user = User()
原文地址:https://www.cnblogs.com/zy7y/p/14197937.html