在类中为该类的每个对象运行函数,可以使用类方法或静态方法来实现。
@classmethod
来进行修饰,并且第一个参数通常是cls
(表示类本身)。class MyClass:
@classmethod
def my_method(cls, arg1, arg2):
# 执行函数逻辑
pass
# 调用类方法
MyClass.my_method(arg1, arg2)
# 或者通过实例调用类方法
obj = MyClass()
obj.my_method(arg1, arg2)
类方法在创建对象之前就已经存在,可以在类方法中访问类的属性和方法,也可以对类进行操作。
@staticmethod
来进行修饰。class MyClass:
@staticmethod
def my_method(arg1, arg2):
# 执行函数逻辑
pass
# 调用静态方法
MyClass.my_method(arg1, arg2)
# 或者通过实例调用静态方法
obj = MyClass()
obj.my_method(arg1, arg2)
静态方法与类的实例和属性无关,主要用于封装通用的功能函数,与类的状态无关。
总结:
腾讯云相关产品推荐:
领取专属 10元无门槛券
手把手带您无忧上云