python中的各种下划线
-
_
只有一个下划线,_ 会指向你最后一次执行的表达式的结果
-
_xx
- 以单个下划线开头命名的方法或者变量,就是说明它是仅提供内部使用的。
-
xx_
-
python内置的关键词都有特殊意义,比如 def、return、class、pass 等,在定义变量或者方法的时候,不可以用它们来命名的
-
但如果非要这样定义变量名或方法,为了区分,在它们的后面添加一个下划线
def_ = 1
-
-
_ _xx
-
用在类的继承,通过两个下划线开头命名的成员,可以防止被子类重写
class Person: def __init__(self): self.name = 'zzzz' self.__age = 18
-
-
_ _ xx _ _
魔法函数,Python 内置好了的,我们可以直接拿来使用,比如类的初始化方法
class Classifier(nn.Module):
def __init__(self, hidden_size):
super(Classifier, self).__init__()
self.linear1 = nn.Linear(hidden_size, 1)
self.sigmoid = nn.Sigmoid()
def forward(self, x, mask_cls):
h = self.linear1(x).squeeze(-1)
sent_scores = self.sigmoid(h) * mask_cls.float()
return sent_scores
-
_ classname__xx
- 定义类的私有属性
_Person__name = 'zzzzz' class Person: def get_name(self): return __name zzz= Person() print(zzz.get_name)