Loading

@abstractmethod抽象方法

使用方法:
from abc import abstractmethod
1.含abstractmethod的方法由子类的相同函数重写
举例:

from abc import abstractmethod
class BaseModel(object):
    def __init__(self):
        self.te()
    @abstractmethod
    def test(self):
        """
        这个函数会计算loss并且通过optimizer.step()更新网络权重。
        """
        pass
    def te(self):
        self.test()

class A(BaseModel):
    def __init__(self):
        super(A, self).__init__()

    def test(self):
        print("a")
c = A()

输出:

a

例子中执行父类初始化时,调用了函数BaseModel类里的te函数,te函数调用了BaseModel类里的test函数,test函数由A的test函数复写,就相当于调用了A中的test.

posted @ 2021-03-11 20:52  Guang'Jun  阅读(169)  评论(0)    收藏  举报