您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。