class_method和static_method

类中定义的函数有两大类(3小种)用途,一类是绑定方法,另外一类是非绑定方法

1.绑定方法:

  特殊之处:绑定给谁就应该由谁来调用,谁来调用就会将谁当做第一个参数自动传入

  1.1绑定给对象的:类中定义的函数默认就是绑定对象的。

  1.2绑定给类的:在类中定义的函数上加上一个装饰器classmethod、

2.非绑定方法:

  特殊之处:就是一个普通函数,根本没有自动传值一说。既不与类绑定也不与对象绑定、

 

3.代码实例:  

  

class Foo:

    def __init__(self, name):
        self.__name = name

    def fun1(self):  # 绑定给对象,应该由对象调用
        print(self)

    @classmethod
    def fun2(cls):  # 绑定给类,应该由类调用
        print(cls)

    @staticmethod
    def fun3():
        print('staticmethod')

 

转载于:https://www.cnblogs.com/linbin7/p/11126372.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值