定义类方法中的参数为啥是cls
定义的类方法中的参数cls 是什么意思?必须要用cls作参数么
定义的类方法中的参数cls 是什么意思?必须要用cls作参数么
2016-03-30
class people: country = 'china' #类方法,用classmethod来进行修饰 @classmethod def getCountry(cls): return cls.country p = people()print p.getCountry() #可以用过实例对象引用print people.getCountry() #可以通过类对象引用
类方法还有一个用途就是可以对类属性进行修改:
class people: country = 'china' #类方法,用classmethod来进行修饰 @classmethod def getCountry(cls): return cls.country @classmethod def setCountry(cls,country): cls.country = country p = people()print p.getCountry() #可以用过实例对象引用print people.getCountry() #可以通过类对象引用p.setCountry('japan') print p.getCountry() print people.getCountry()
运行结果:
china china japan japan
举报