>[success] # 像 java 一样创建一个python 接口 ~~~ 1.使用from abc import ABCMeta, abstractmethod 2.py是动态语言所以接口这么直接略过不做详细了解了 ~~~ >[danger] ##### 定义案例 ~~~ from abc import ABCMeta, abstractmethod class IStream(metaclass=ABCMeta): @abstractmethod def read(self, maxbytes=-1): pass @abstractmethod def write(self, data): pass ~~~ * 抽象类的一个特点是它不能直接被实例化 ~~~ a = IStream() # TypeError: Can't instantiate abstract class # IStream with abstract methods read, write ~~~ * 抽象类的使用通过集成 ~~~ class SocketStream(IStream): def read(self, maxbytes=-1): pass def write(self, data): pass ~~~