首页 > 装修问答 > 其它 > Python 中的 classmethod 和 staticmethod 有什么具体用途?

Python 中的 classmethod 和 staticmethod 有什么具体用途?

浏览次数:1322|时间:2024-05-05

热门回答

2024-04-29小精灵926

classmethod,是将该装饰器修饰的函数,一个是对类的对象操作,这样可以直接通过类调用该方法:
cls两个都是装饰器,也就是一个对象,在test里可以对类进行初始化等等,而不用实例话该对象:
@classmethod
def test(cls).__init__()
print “hehe”
a = A()
a.test()
这个时候。
就是其修饰的函数,staticmethod是将类的函数声明为静态方法:
@staticmethod
def test(self)。
例如
class A():
print “hehe”
A.test() 这样就能调用,第一个参数变为cls(平常是self)。
self指向该类的实例,cls指向这个类本身
class A()

210