L13 Data Abstraction

  • 数据表示
    • 数据抽象使用 selectorsconstructors 来定义行为
    • 数据抽象的本质是通过它的行为识别
    • 具体实现可能不同,例如有理数的构造返回可能是列表也可能是函数,它的选择也会因构造的不同而改变
  • 抽象屏障
    • 在实现高级功能时,应尽量使用低级功能,而非实现本身,这样尽量隔离底层
    • 操作函数 --> 基本操作函数 ---> 构造器 + 选择器 ---> 底层表
  • 数据抽象例子数据抽象.png

  • Pairs

    • 由两个值组成的单元
      • pair = [1,2]
      • x,y=pair --- 解包
      • >>> x == 1 y == 2
  • python3.5及以上的math模块中有gcb,求最大公约数


评论