python技巧31[python中使用enum][转]

简介:

以下几种方法来模拟enum:(感觉方法一简单实用)

复制代码
复制代码
# way1
class Directions:
    up = 0
    down = 1
    left = 2
    right =3
    
print Directions.down

# way2
dirUp, dirDown, dirLeft, dirRight = range(4)

print dirDown

# way3
import collections
dircoll=collections.namedtuple('directions', ('UP', 'DOWN', 'LEFT', 'RIGHT'))
directions=dircoll(0,1,2,3)

print directions.DOWN

# way4
def enum(args, start=0):
    class Enum(object):
        __slots__ = args.split()

        def __init__(self):
            for i, key in enumerate(Enum.__slots__, start):
                setattr(self, key, i)

    return Enum()

e_dir = enum('up down left right')

print e_dir.down

# way5
# some times we need use enum value as string
Directions = {'up':'up','down':'down','left':'left', 'right':'right'}

print Directions['down']
复制代码
复制代码

 

问题:有的时候需要使用enum的值作为字符串使用,像way5中表示的,大家有没有更好的办法?

 

参考:http://audbel.com/0/5009691

        http://www.cnblogs.com/itech/archive/2011/03/08/1977245.html

欢迎加群互相学习,共同进步。QQ群:iOS: 58099570 | Android: 572064792 | Nodejs:329118122 做人要厚道,转载请注明出处!















本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/sunshine-anycall/p/4297925.html ,如需转载请自行联系原作者

相关文章
|
10月前
|
Python
Python 枚举类型 Enum
Python 枚举类型 Enum
|
算法 程序员 C++
Python数据结构与算法(1)---枚举类型enum
Python数据结构与算法(1)---枚举类型enum
123 0
Python数据结构与算法(1)---枚举类型enum
|
Python
Python:Enum枚举类的使用示例
Python:Enum枚举类的使用示例
104 0
|
Python
【Python面线对象进阶⑤】——枚举类enum
枚举类,在企业开发中用的比较多 当我们需要定义常量时,一个办法是用大写的变量通过整数来定义。
180 0
【Python面线对象进阶⑤】——枚举类enum
|
Python
每周一个 Python 模块 | enum
枚举类型可以看作是一种标签或是一系列常量的集合,通常用于表示某些特定的有限集合,例如星期、月份、状态等。Python 的原生类型(Built-in types)里并没有专门的枚举类型,但是我们可以通过很多方法来实现它,例如字典、类等:
84 0
|
Python
Python:Enum枚举类的使用示例
Python:Enum枚举类的使用示例
73 0
|
5天前
|
存储 索引 Python
元组(Tuple)在Python编程中的应用与实例
元组(Tuple)在Python编程中的应用与实例
19 2
|
5天前
|
机器学习/深度学习 数据可视化 数据挖掘
Python编程的深入探索与实用案例
Python编程的深入探索与实用案例
16 3
|
1天前
|
数据采集 运维 API
适合所有编程初学者,豆瓣评分8.6的Python入门手册开放下载!
Python是一种跨平台的计算机程序设计语言,它可以用来完成Web开发、数据科学、网络爬虫、自动化运维、嵌入式应用开发、游戏开发和桌面应用开发。 Python上手很容易,基本有其他语言编程经验的人可以在1周内学会Python最基本的内容(PS:没有基础的人也可以直接学习,速度会慢一点) 今天给小伙伴们分享一份Python语言及其应用的手册,这份手册主要介绍 Python 语言的基础知识及其在各个领域的具体应用,基于最新版本 3.x。
|
1天前
|
缓存 测试技术 Python
Python编程中的装饰器应用及性能优化
装饰器是Python中一种强大的功能,它允许我们修改或增强函数或类的行为,而无需修改其本身的代码。装饰器在Python中广泛应用,包括日志记录、性能测试、事务处理、缓存等。 **一、装饰器的基础