考虑这个例子:
class MyClass:def func(self, name):self.name = name我知道self指的是MyClass的特定实例。但是为什么func必须显式包含self作为参数?为什么我们需要在方法代码中使用self?其他一些语言使这一点隐式化,或使用特殊的语法代替。
有关与语言无关的设计决策的考虑,请参阅强制显式设置this/self指针的优点是什么?
要关闭调试问题,其中OP省略了方法的self参数并获得了TypeError,请使用TypeError:方法()需要1个位置参数,但给出了2个