Python Class
Posted 渡轮终会回航
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python Class相关的知识,希望对你有一定的参考价值。
Basic knowledge:
1. Class VS Instance;
class Student(object): def __init__(self, name, score): self.__name = name self.__score = score def print_score(self): print(self.__name,self.__score)
2. variables
私有变量private,__name, 双下划线: 只能内部访问,不能外部访问。
_name,当为单下划线时, 这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,当你看到这样的变量时,意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问”。
特殊变量, __name__,可以直接访问,一般为库变量,比如tf.__version__; 库函数也可以加双下划线,比如def __int__(self, param1, param2);
3. Class.functions
相比于普通的函数,类函数的第一个参数永远是self,即实例变量本身,并且调用时不用传递该参数,程序会自动添加传递。
4. self的仔细用法
- self代表类的实例,而非类。self.__class__则指向类。
- self 在函数定义时,不可以省略。因为程序会自动传递self参数,省略会导致参数报错。
5. 在pytorch的网络结构类中,一般是下面的结构,先init,下边super 然后定义网络结构 再接着forward函数,把数据传进去 计算
self(x)返回的是forward 函数的结果。
class VRAE(BaseEstimator, nn.Module): def __init__(self, sequence_length, number_of_features, hidden_size=90, hidden_layer_depth=2, latent_length=20, batch_size=32, learning_rate=0.005, block=‘LSTM‘, n_epochs=5, dropout_rate=0.): super(VRAE, self).__init__() self.dtype = torch.FloatTensor self.encoder = Encoder(number_of_features = number_of_features, hidden_size=hidden_size, hidden_layer_depth=hidden_layer_depth, latent_length=latent_length, dropout=dropout_rate, block=block) self.lmbd = Lambda(hidden_size=hidden_size, latent_length=latent_length) self.decoder = Decoder(sequence_length=sequence_length, batch_size = batch_size, hidden_size=hidden_size, hidden_layer_depth=hidden_layer_depth, latent_length=latent_length, output_size=number_of_features, block=block, dtype=self.dtype) self.sequence_length = sequence_length self.hidden_size = hidden_size self.hidden_layer_depth = hidden_layer_depth self.latent_length = latent_length self.batch_size = batch_size def forward(self, x): cell_output = self.encoder(x) latent = self.lmbd(cell_output) x_decoded = self.decoder(latent) return x_decoded, latent
以上是关于Python Class的主要内容,如果未能解决你的问题,请参考以下文章
解决spring-boot启动中碰到的问题:Cannot determine embedded database driver class for database type NONE(转)(代码片段