你可以参考一下https://www.zhihu.com/question/39264541/answer/2387696492
对于你的问题,你可以理解为,若你要把一个函数写到class里面,那么必须加上self,加上之后,这个def就是class里面的一种方法,若不加,就是一个普通函数,但是它放在class里面且没加self,编译器判定缩进不对
望采纳,谢谢
self是实例的身份象征,不然大家都是一个类,程序怎么知道是哪个实例在调用它的属性和方法?
写成self是约定俗成的,就是一个变量名,用其它名字也行,放在第一个位置的变量默认就是实例自己。