Python类与类之间的关系(3) #####类方法静态方法区别 123456789101112131415161718192021222324252627282930class Num: #普通方法:能用Num调用而不能用实例化对象调用 def one(): print ('1') #实例方法:能用实例化对象调用而不能用Num调用 def two(self): print ('2') #静态方法:能用Num和实例化对象调用 @staticmethod def three(): print ('3') #类方法:第一个参数cls长什么样不重要,都是指Num类本身,调用时将Num类作为对象隐式地传入方法 @classmethod def go(cls): cls.three() Num.one() #1#Num.two() #TypeError: two() missing 1 required positional argument: 'self'Num.three() #3Num.go() #3i=Num() #i.one() #TypeError: one() takes 0 positional arguments but 1 was given i.two() #2 i.three() #3i.go() #3 Python 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处! Python常用模块01 上一篇 Python约束和异常处理,Md5,日志处理 下一篇