Python面向对象编程(类编程)中self的含义详解(简单明了直击本质的解释)

以下是博主认为的对self讲解得比较透彻又简洁明了的资料。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上面的资料把这个问题说得简单明了,大家认真看一遍相信就对self有个深入的了解了。
总结一下:
在Python为面向对象编程中,成员函数被调用时,无论函数有没有参数,都会有一个参数传给它,这个参数就是类本身,所以我们在定义成员函数时不管有没有参数传递,都要写上一个参数,这个参数代表类本身,通过这个参数我们可以引用类的成员变量和成员函数。
这个参数通常我们命名为self,当然你也可以写为其它的名字,但是为代码的标准和可读性,不建议这样操作。
所以,下面的代码:

class Staff:  # Staff为员工的意思
    bonus = 30000  # bonus为津贴、奖金的意思

    def salary(self):  # salary为工资的意思
        salary = 10000+self.bonus
        return salary


zhang_san = Staff()
zhang_san_salray = zhang_san.salary()

我们也可以写为:

class Staff:  # Staff为员工的意思
    bonus = 30000  # bonus为津贴、奖金的意思

    def salary(swh):  # salary为工资的意思
        salary = 10000+swh.bonus
        return salary


zhang_san = Staff()
zhang_san_salray = zhang_san.salary()

上面这个代码,一定可以正确运行,如下图所示:
在这里插入图片描述

延伸阅读:
为什么在Python类的构造函数中的变量通常前面都要加上“self.“?

  • 6
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值