• 技术文章 >Python技术 >Python基础教程

    python的类有几种方法

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-09-23 17:20:35原创8397

    python 类语法中有三种方法,实例方法,静态方法,类方法。

    普通实例方法,第一个参数需要是self,它表示一个具体的实例本身。

    如果用了staticmethod,那么就可以无视这个self,而将这个方法当成一个普通的函数使用。

    而对于classmethod,它的第一个参数不是self,是cls,它表示这个类本身。

    相关推荐:《Python教程

    例子:

    # coding:utf-8
    class Foo(object):
        """类三种方法语法形式"""
     
        def instance_method(self):
            print("是类{}的实例方法,只能被实例对象调用".format(Foo))
     
        @staticmethod
        def static_method():
            print("是静态方法")
     
        @classmethod
        def class_method(cls):
            print("是类方法")
     
    foo = Foo()
    foo.instance_method()
    foo.static_method()
    foo.class_method()
    print('----------------')
    Foo.static_method()
    Foo.class_method()

    运行结果如下:

    是类<class '__main__.Foo'>的实例方法,只能被实例对象调用
    是静态方法
    是类方法
    ----------------
    是静态方法
    是类方法

    说明:

    实例方法只能被实例对象调用,静态方法(由@staticmethod装饰的方法)、类方法(由@classmethod装饰的方法),可以被类或类的实例对象调用。

    实例方法,第一个参数必须要默认传实例对象,一般习惯用self。

    静态方法,参数没有要求。

    类方法,第一个参数必须要默认传类,一般习惯用cls。

    专题推荐:python 类 方法
    上一篇:python如何连接redis 下一篇:如何用python求平均值

    相关文章推荐

    • 详解Python面向对象编程之类、实例、方法• python怎么调用类方法• python静态方法和类方法的区别有哪些

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网