zoukankan      html  css  js  c++  java
  • 【Python】[面向对象高级编程] 多成继承,定制类,使用枚举

    1、多成继承

    class SmallDog(Animal,Dog)
        pass

    MixIn就是一种常见的设计。

    2、定制类
    类似__slots__这种形如 __xxx__ 的变量或者函数名,在python中有特殊的用途的。
    class中有特殊用途的函数,可以定制类。
    3、使用枚举类
    每个常量都是class的一个唯一实例,python提供了Enum类来实现此功能。

    from enum import Enum
    Month = Enum('Month',('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'))

    可以直接使用 Month.Jan 来引用一个常量,或者枚举它的所有成员。

    from enum import Enum, unique
    
    @unique
    class Weekday(Enum):
        sun = 0
        Mon = 1
        Tue = 2
        Web = 3
        Thu = 4
        Fri = 5
        Sat = 6

    #unique 装饰器可以帮助我们检查没有重复。

    >>>day1 = Weekday.Mon
    >>>print(day1)
    Weekday.Mon
    
    >>>print(Weekday.Tue.value)
    2

    注:value返回值,

  • 相关阅读:
    Java 泛型
    Github
    软件工程----前端
    前端全局缓存的三种方式
    关于IDE的选择
    模拟placeholder
    小程序request封装
    小程序实现大转盘抽奖----踩坑之路
    关于this的理解
    小程序背景图片bug
  • 原文地址:https://www.cnblogs.com/oiliu/p/4753279.html
Copyright © 2011-2022 走看看