转载 | python inferface使用

Python中最特别的关键字之一便是pass,它放在类或函数里,表示类和函数暂不定义。

 class PassClass:
     pass
 def PassFun():
     pass 

  

如上实现最精简的类和函数定义。

今天跟大家分享一个pass的特别的用法,实现可读性更好的接口写法。这对Java语言的interface、implements等用习惯了的朋友更是一大福音。

首先安装一个包:

 pip install python-interface

参考此包的使用介绍:

 from interface import implements, Interface
 ​
 class I(Interface):
     def method(self, a, b):
         pass
 ​
 class C(implements(I)):
     def method(self):
         return "This shouldn't work"

下面是这个包的基本用法,首先创建一个接口类:

 from interface import implements, Interface
 ​
 class MyInterface(Interface):
 ​
     def method1(self, x):
         pass
 ​
     def method2(self, x, y):
         pass

下面写一个MyClass实现接口MyInterface,重写方法method1method2:

 class MyClass(implements(MyInterface)):
 ​
     def method1(self, x):
         return x * 2
 ​
     def method2(self, x, y):
         return x + y

程序的每层最终都会抽象于接口层,因此接口必然会被用到,而这个包写出的接口可读性更有好一些,推荐大家平时使用。

原文地址:https://www.cnblogs.com/qianyuesheng/p/14516393.html