这篇文章将为大家详细讲解有关python中self在函数中如何使用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Python中self在类模板中出现的两个位置:
1.各个类方法的形参变量中,作为第一个参数;
2.各个类方法体在调用类属性和类方法时,以点取法获取。
class Sequence(nn.Module): def __init__(self): super(Sequence, self).__init__() self.lstm1 = nn.LSTMCell(3, 51) self.lstm2 = nn.LSTMCell(51, 51) self.linear = nn.Linear(51, 3) def forward(self, input, h_t, c_t, h_t2, c_t2): outputs = [] for i, input_t in enumerate(input): h_t, c_t = self.lstm1(input_t, (h_t, c_t)) h_t2, c_t2 = self.lstm2(h_t, (h_t2, c_t2)) output = self.linear(h_t2) outputs += [output] outputs = torch.stack(outputs, 0).squeeze(2) return outputs, h_t, c_t, h_t2, c_t2
注意点:
1.self只有在类方法中才会出现,独立的函数或方法是不必带有self的;
2.self在定义类的方法时是必须有的,但是在调用时是不用写的,因为解释器会自动将 self变量添加到方法的参数列表中;
3.self指的是类实例化后的对象本身,并不是类本身,因为类本身是不会被解释器解释运行的,因此它的属性、方法、参数都不是真正的有效值;
4.self可以看做是一个占位符,因此它的名称并不是一定要写生self的,在python中self也不是关键字,这个名字是可以随意定义的,但为了提高代码的可读性,最好是将其命名成self。
关于python中self在函数中如何使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。