python函数self用法 Python中的cls和self有什么区别?

Python中的cls和self有什么区别?对于普通方法,第一个参数必须是self,它表示一个特定实例本身。如果使用静态方法,则可以忽略self并将该方法用作普通函数。对于classmethod,第一

Python中的cls和self有什么区别?

对于普通方法,第一个参数必须是self,它表示一个特定实例本身。如果使用静态方法,则可以忽略self并将该方法用作普通函数。对于classmethod,第一个参数是CLS,而不是self,它表示类本身。>>> A类(对象):def foo1(self):打印“Hello”self@staticmethoddefFoo2():print“Hello”@classmethoddef foo3(CLS):print“Hello”,CLS>>>> a=a()>>> a。foo1()#是最常见的调用方式,但与下面的Hello方法相同

Self引用自身,自我就是阶级本身,姓名person类中的变量归person所有。Name是一个外部参数,而不是person本身的变量。self.name=名称这句话的意思是将参数名值从外部赋给person类中它自己的变量名。