我正在浏览python书"潜入python"并且发现了以下文字:
定义类方法时,必须将self显式列为每个方法的第一个参数, 包括
__init__
。当您从类中调用祖先类的方法时,必须包括self
参数。但是当你从外面调用你的类方法时,你没有指定任何东西self
参数;你完全跳过它,Python会自动为你添加实例引用。
请借助示例帮助我理解本文。
答案 0 :(得分:1)
“自我”这个名字只是一个惯例。如果你熟悉C ++,你可以调用类指针“this”而不是“self”,python编译器会生成相同的代码。
从类内部,您可以直接调用任何函数,而不需要“类对象”。作为前缀。但是,您必须显式提供可能是“self”的类指针。
在类外调用函数时,您无法选择将类对象作为前缀。 python编译器自动将该类对象作为该函数的第一个参数。