继承
以下是一段伪代码
from torch import nn.model
class MODEL(nn.model):
# 继承了nn.mdoel类,可以自定义部分函数
def forward(self,x):
x = self.linear1(x)
x = self.batchnormal1d1(x)
x = self.relu1(x)
return x
python可以继承一个类,在不改变类本身下,重写相关方法
多继承
class A:
def a_fuc(self):
class B:
def b_fuc(self):
class C(A, B):
C.b_fuc()
多态
不同子类调用相同方法,执行产生不同形态,即多态
import abc
class Animal(metaclass=abc.ABCMeta): #同一类事物:动物
@abc.abstractmethod
def talk(self):
pass
class Cat(Animal): #动物的形态之一:猫
def talk(self):
print('say miaomiao')
class Dog(Animal): #动物的形态之二:狗
def talk(self):
print('say wangwang')
class Pig(Animal): #动物的形态之三:猪
def talk(self):
print('say aoao')
@abstractmethod将一个方法标记为抽象方法。抽象方法是没有实际实现的方法,其目的是为了在子类中被重写(实现)。在抽象基类中,可以使用 @abstractmethod 装饰器来声明一个抽象方法,从而强制子类实现这个方法。
封装
这篇文章讲的挺好的详解Python中的封装