python学习_python类方法和普通方法区别

python学习_python类方法和普通方法区别

python类办法以及平凡办法差别

上面用例子的体式格局,说明其差别。

起首, 界说一个类,包含2个办法:

class Apple(object):
        def get_apple(self, n):
                print "apple: %s,%s" % (self,n)
        @classmethod
        def get_class_apple(cls, n):
                print "apple: %s,%s" % (cls,n)

类的平凡办法

类的平凡办法,需求类的实例挪用。

a = Apple()
a.get_apple(2)

输入后果

apple: <__main__.Apple object at 0x7fa3a9202ed0>,2

再看绑定干系:

print (a.get_apple)
<bound method Apple.get_apple of <__main__.Apple object at 0x7fa3a9202ed0>>

类的平凡办法,只能用类的实例去运用。假如用类挪用平凡办法,呈现以下过错:

Apple.get_apple(2)
Traceback (most recent call last): File "static.py", line 22, in <module> Apple.get_apple(2) TypeError: unbound method get_apple() must be called with Apple instance as first argument (got int instance instead)

类办法

类办法,透露表现办法绑定到类。

a.get_class_apple(3)
Apple.get_class_apple(3)
apple: <class '__main__.Apple'>,3
apple: <class '__main__.Apple'>,3

再看绑定干系:

print (a.get_class_apple) print (Apple.get_class_apple)

输入后果,用实例以及用类挪用是同样的。

<bound method type.get_class_apple of <class '__main__.Apple'>> <bound method type.get_class_apple of <class '__main__.Apple'>>

相关推选:《Python教程》

以上便是python类办法以及平凡办法差别的具体内容,更多请存眷酷吧易资源网别的相关文章!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

酷吧易资源网 python教程 python学习_python类方法和普通方法区别 https://www.kubayi.com/4958.html

常见问题

相关文章

评论
暂无评论