@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.

浙公网安备 33010602011771号