python中@staticmethod方法,类似于C++中的static,方便将外部函数集成到类体中,主要是可以在不实例化类的情况下直接访问该方法,如果你去掉staticmethod,在方法中加self也可以通过实例化访问方法也是可以集成。
class Test:
def __init__(self,num):
self.num = num;
def cout_num(self):
print(self.num)
@staticmethod
def print_num():
print("Hello World")
if __name__ == "__main__":
obj = Test(10)
"""实例化成员方法"""
obj.cout_num()
"""直接访问静态方法"""
Test.print_num()
"""实例化 访问静态方法"""
obj.print_num()
输出结果
10
Hello World
Hello World