[英]Best way to access class-method into instance method
class Test(object):
def __init__(self):
pass
def testmethod(self):
# instance method
self.task(10) # type-1 access class method
cls = self.__class__
cls.task(20) # type-2 access class method
@classmethod
def task(cls,val)
print(val)
我有两种方法来访问类方法到实例方法。
self.task(10)
要么
cls = self.__class__
cls.task(20)
我的问题是哪一个是最好的,为什么?
如果两种方式都不相同,那么我使用哪种方式?
self.task(10)
绝对是最好的。
首先,两者最终将以类实例的相同操作结束:
类实例
...
特殊属性:__ dict__是属性字典; __class__是实例的类
...通过从类或实例中检索类方法对象来创建实例方法对象时,其__self__属性是类本身
但第一个更简单,不需要使用特殊属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.