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

    python的类有几种方法

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

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

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

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

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

    相关推荐:《Python教程

    例子:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    # 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()

    运行结果如下:

    1

    2

    3

    4

    5

    6

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

    是静态方法

    是类方法

    ----------------

    是静态方法

    是类方法

    说明:

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

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

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

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

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

    相关文章推荐

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

    全部评论我要评论

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

  • 取消发布评论
  • 

    Python学习网