浅谈python中class的理解

复制代码
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类中的方法
复制代码

 

posted @ 2022-01-04 13:37  爱吃牛牛的康康  阅读(443)  评论(0)    收藏  举报
点击右上角即可分享
微信分享提示