import torch.nn as nn
import torch
class add1(nn.Module):
def __init__(self): # __init__() 是类的初始化方法;它在类的实例化操作后 会自动调用,不需要手动调用;
super(add1, self).__init__() # self是首先调用自身的方法如果自身没有再去父类中找;super是直接从父类中找方法
def forward(self, a, b): # 定义forward中的输入信息,a,b
return a + b
ad = add1() # 实例化
a = 1
b = 2
c = ad(1,2)
print(c)
d = add1()(a, b)
print(d)
# 错误使用方法
# e = add1(1,2)
# print(e)
class add2(nn.Module): # 如果子类初始化时没有这个函数,那么它便调用父类的__init__()
def __init__(self, a, b):
super(add2, self).__init__()
self.a = a # 设置属性
self.b = b
def forward(self):
a = self.a
b = self.b
return a + b
k = add2(5, 6)
print(k.a) # 5
print(k.b) # 6
print(k.forward()) # 11 调用class类中的方法