代码中的Self一般传什么参数?

我们总会在class里面看见self,但是感觉他好像也没什么用处,就是放在那里占个位子,不知道传什么参数给Self,如果你也有同样的想法,那么恭喜你,你找到宝藏文章了,就算我讲不清楚,底下的几个链接绝对讲的很详细,觉得有帮助的记得回来帮忙点个赞!

1.什么是Self?

在Python为面向对象编程中,成员函数被调用时,无论函数有没有参数,都会有一个参数传给它,这个参数就是类本身,所以我们在定义成员函数时不管有没有参数传递,都要写上一个参数,这个参数代表类本身,通过这个参数我们可以引用类的成员变量和成员函数。
这个参数通常我们命名为self,当然你也可以写为其它的名字,但是为代码的标准和可读性,不建议这样操作。
注意:
1.self是在为class编写instance method的时候,放在变量名第一个位子的占位词。
2.在具体编写instance method里,可以不使用self这个变量。
3.如果在method里面要改变instance的属性,可以用self.xxxx来指代这个属性进行修改。

2.代码中Self一般传什么参数?

用类调用方法的时候要将对象传给self,不过这种情况极少,一般都是用对象调用自身的方法,此时self直接赋值对象本身,不用再传入。例如:

class A():
    def method1(self, X):
        print('你好啊?'+X)
    def method2(self,M):
        print('我好个屁啊?'+M)
X='WYF'
Y='学习烦死了!'
#给类实例化
a = A()
# 用类调用方法
result = A.method1(a,X)
# 用对象调用
result = a.method2(Y)

结果如下:
在这里插入图片描述

其中代码中这两种写法是等价的。

参考文章:Python中方法的self参数该传什么
Python中的self详细解析
python里面的self,是谁啊?
Python面向对象编程(类编程)中self的含义详解(简单明了直击本质的解释)

猜你喜欢

转载自blog.csdn.net/qq_45104603/article/details/129784702