类方法和静态方法

类方法

类方法是类对象所拥有的方法,创建类方法需要用装饰器@classmethod来标识,类方法的第一个参数必须是类对象,一般以cls作为第一个参数(不是必须的),类方法可以通过实例对象和类对象访问

使用类方法可以对类属性进行修改,比如:
class People(object):
    country = "China"

    @classmethod
    def get_country(cls):
        return cls.country

    @classmethod
    def set_country(cls, new_country):
        cls.country = new_country


p1 = People()
print(p1.get_country())  # 实例对象可以调用类方法
print(People.get_country())  # 类对象可以调用类方法

People.set_country("北京")  # 使用类方法修改类属性

静态方法,

静态方法是类中的函数,不需要实例,静态方法中不需要设计类中的属性和方法的操作。
静态方法是个独立的函数,仅仅存在于类的名称空间中,便于使用和维护

class People(object):
    country = "上海"

    @staticmethod
    def get_country():
        return People.country


print(People.get_country())
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容