1. 它是什么__init__是类的初始化方法前后双下划线叫魔术方法魔法函数。作用创建对象实例时自动执行用来给对象绑定属性、做初始化配置。2. 执行时机classPerson:def__init__(self,name):print(__init__ 自动运行了)# self代表当前新建的实例对象self.namename# 只要写这一句立刻调用 __init__pPerson(小明)# 输出__init__ 自动运行了Person(小明)先创建一块空的对象内存自动调用__init__(self, 小明)self自动传入刚创建好的对象用来挂载属性3. self 是什么self是固定第一个参数指代当前实例本身。通过self.xxx定义实例属性每个对象独立拥有classPerson:def__init__(self,name,age):self.namename# 实例属性self.ageage p1Person(张三,20)p2Person(李四,22)print(p1.name)# 张三print(p2.name)# 李四4. 核心作用接收创建对象时传入的参数给每个实例绑定专属变量属性初始化需要的资源比如创建张量、打开文件、初始化权重做初始校验、默认赋值。5. 常见配套用法1设置参数默认值classPerson:def__init__(self,name,age18):self.namename self.ageage pPerson(小红)# age自动182结合你前面的Logistic回归代码举例classLogisticRegressionManual(object):def__init__(self):# 创建实例时自动初始化权重w、偏置bself.wtorch.randn(size(2,1),requires_gradTrue)self.btorch.randn(size(1,1),requires_gradTrue)# lrm LogisticRegressionManual()# 执行这一行自动运行__init__创建w和b6. 容易混淆__init__≠__new____new__真正创建空白对象分配内存__init__对象创建完成后填充初始化数据日常写代码几乎只用__init__。7. 关键总结类定义里默认第一个写的函数就是__init__是类的入口初始化函数创建实例时自动调用不用手动写obj.__init__()第一个参数必须是self代表自身实例所有self.属性是每个对象独有的数据双下划线包裹的函数统称魔术方法Python内部自动触发执行。