为什么激活函数定义时self.activation,调用时是self.act才行

为什么激活函数定义时self.activation = activation
但forward 用时是self.act才行
如果用self.activation 提示 self.activation,'str' object is not callable

代码如下

img

你把这里的activation都干掉也可以调用啊,他是继承自父类module的成员

class Model:
    def __init__(self):
        super(Model, self).__init__()
        self.name="Model"
    def act(self):
        print(self.name)

class Func(Model):
    def __init__(self,action="Func"):
        super(Func, self).__init__()
        self.action=action
    def forward(self):
        self.act()
        print(self.action)
f=Func()
f.forward()

img