zoukankan      html  css  js  c++  java
  • python:面向对象编程之Zope.interface安装使用

    一、接口简述

    在我们所熟知的面向对象编程语言中,大多提供了接口(interface)的概念。接口在编程语言中指的是一个抽象类型,是抽象方法的集合;它的特点如下:

    1、类通过继承接口的方式,来继承接口的抽象方法;

    2、接口并不是类(虽然编写类和方法的方式很相似);

    3、类描述对象的属性和方法(实现接口的类,必须实现接口内所描述的所有方法,否则必须声明为抽象类);

    4、接口包含类要实现的方法(接口无法被实例化,但可以被实现);

    总结:接口只定义规范,不负责具体实现(具体实现由具体的实现者完成)!

    二、python中的interface

    python中也有interface的概念,但是python其本身不提供interface的实现,需要通过第三方扩展库来使用类似interface的功能,一般都是Zope.interface。

    PyPI地址:Zope.inter

    或者通过pip命令行进行安装,示例如下:

    如上图所示:zope.interface下载成功后提示我pip版本较低,然后升级pip到最新版本,升级成功后zope.interface就安装成功了,接下来使用即可。

    官方文档:Zope.interface

    三、zope.interface_demo.py

    复制代码
     1 # coding=utf-8
     2 from zope.interface import Interface
     3 from zope.interface.declarations import implementer
     4 
     5 # 定义接口
     6 class MyMiss(Interface):
     7     def imissyouatlost(self,miss):
     8         """Say i miss you at lost to miss"""
     9 
    10 @implementer(MyMiss) # 继承接口
    11 class Miss:
    12     def imissyouatlost(self,somebody):
    13         """Say i miss you at lost to somebody"""
    14         return "i miss you at lost, %s!" % somebody
    15 
    16 if __name__ == '__main__':
    17     z = Miss()
    18     hi = z.imissyouatlost('Zy')
    19     print(hi)
    复制代码
  • 相关阅读:
    POJ 1006 ( 中国剩余定理 )
    HDU 2736 Surprising Strings
    STL----map 章节
    最短路问题
    [HAOI2007]反素数
    严格次小生成树[BJWC2010]
    P3320 [SDOI2015]寻宝游戏(LCA)
    [Violet]樱花/阶乘分解
    [HNOI2008]GT考试
    2012 年国家集训队互测 Tree
  • 原文地址:https://www.cnblogs.com/anzhangjun/p/9742070.html
Copyright © 2011-2022 走看看