一尘不染

您何时在Python中使用“自我”?

python

self在Python中(在同一模块中)引用成员函数时,应该使用吗?

更笼统地说,我想知道何时需要使用它self,不仅用于方法,还用于变量。


阅读 162

收藏
2020-12-20

共1个答案

一尘不染

添加答案是因为Oskarbi的答案不是明确的。

self在以下情况下使用:

  1. 定义实例方法。在实例上调用方法时,它将作为第一个参数自动传递,并且是在其上调用该方法的实例。
  2. 从实例方法内部引用 类或实例 属性。您可以使用它来调用方法,也可以从该方法内部在调用该方法的实例上访问名称(变量)。

使用self的时候

  1. 您通常调用一个实例方法。以奥斯卡比(Oskarbi)的示例为例,如果您这样做instance = MyClass(),则称呼MyClass.my_methodinstance.my_method(some_var)not as instance.my_method(self, some_var)
  2. 您从实例方法 外部 但在类定义内部引用类属性。
  3. 您在静态方法中

这些不只是何时不使用自我的例子。Dos是您 应该 使用的时间。

2020-12-20