python3(三十) Enum
2024-09-07 09:42:26
""" """
__author__ = 'shaozhiqi' # 当我们需要定义常量时,一个办法是用大写变量通过整数来定义,例如月份:
JAN = 1
FEB = 2
MAR = 3
# 好处是简单,缺点是类型是int,并且仍然是变量 # --------------Enum----------------------------------------------
from enum import Enum Month = Enum('Month', ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'))
print(Month.Jan) # Month.Jan from enum import unique # @unique装饰器可以帮助我们检查保证没有重复值。
@unique
class Weekday(Enum):
Sun = 0 # Sun的value被设定为0
Mon = 1
Tue = 2
Wed = 3
Thu = 4
Fri = 5
Sat = 6 day1 = Weekday.Mon
print(day1) # Weekday.Mon
print(day1.value) # for name, member in Weekday.__members__.items():
print(name, '->', member)
# Sun -> Weekday.Sun
# Mon -> Weekday.Mon
# Tue -> Weekday.Tue
# Wed -> Weekday.Wed
# Thu -> Weekday.Thu
# Fri -> Weekday.Fri
# Sat -> Weekday.Sat
最新文章
- AVL Insight 开源情报工具:一站式情报管理服务
- java replace和replaceAll
- 使用Innosetup制作安装包的一些技巧
- 也来说说C#异步委托(转)
- javascript函数作用域和提前声明
- embed标签遮住div层
- Android 自定义View (二) 进阶
- JavaScript正则表达式的坑很深
- VCL组件之TLabel、TStaticText和TLabeledEdit
- NFS服务安装及配置
- Struts2学习笔记四 OGNL
- 如何卸载Centos自带jdk
- 安装AB编程软件提示安装失败时如何处理
- webstorm里用 DB browser 连接 mysql SQlite Oracle数据库
- 两个左连接SQL执行计划解析(Oracle和PGSQL对比):
- vmware中centos6.7系统图形化安装Oracle-无法打开RUNINSTALLER
- epoll+socket实现 socket并发 linux服务器
- Android Studio学习NO.1 了解项目资源
- 515. Find Largest Value in Each Tree Row查找一行中的最大值
- 【pycharm 警告】unittest RuntimeWarning: Parent module ” not found while handling absolute import