@staticmethod装饰器--python静态方法

时间:2021-05-16 19:33:19

在python中, 通过obj.method()调用一个方法默认会传入实例本身作为参数. 在类中定义方法时, 第一个参数也总是self. 如果想要通过实例调用一个不需要接收self参数的方法, 需要用到@staticmethod装饰器.

在实例中直接调用不接收self参数的函数:

@staticmethod装饰器--python静态方法

 运行结果:

@staticmethod装饰器--python静态方法

提示print_count函数不接收参数, 但是调用时提供一个参数. 

使用@staticmethod方法:

@staticmethod装饰器--python静态方法

运行结果:

@staticmethod装饰器--python静态方法

此时的print_count函数和add函数相当于一个普通的函数, 使用实例调用时不会自动将实例作为参数传入.