Python中模拟enum枚举类型的5种方法分享

 更新时间:2014年11月22日 10:37:44   投稿:junjie  
这篇文章主要介绍了Python中模拟enum枚举类型的5种方法分享,本文直接给出实现代码,需要的朋友可以参考下

以下几种方法来模拟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']


相关文章

  • 基于web管理OpenVPN服务的安装使用详解

    基于web管理OpenVPN服务的安装使用详解

    这篇文章主要为大家介绍了基于web管理OpenVPN服务的安装使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Python的运算符重载详解

    Python的运算符重载详解

    这篇文章主要介绍了Python的运算符重载详解,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • 举例讲解Python中的list列表数据结构用法

    举例讲解Python中的list列表数据结构用法

    这篇文章主要介绍了Python中的list列表数据结构用法,列表是Python内置的六种集合类数据类型中最常见的之一,需要的朋友可以参考下
    2016-03-03
  • Python 3 判断2个字典相同

    Python 3 判断2个字典相同

    这篇文章主要介绍了Python 3 判断2个字典相同,文中给大家提到了Python3 查找两字典的相同点问题及解决方法,需要的朋友可以参考下
    2019-08-08
  • python 如何将字典写为json文件

    python 如何将字典写为json文件

    这篇文章主要介绍了python 如何将字典写为json文件的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • linux系统使用python获取cpu信息脚本分享

    linux系统使用python获取cpu信息脚本分享

    这篇文章主要介绍了linux系统使用python获取cpu信息脚本,大家参考使用吧
    2014-01-01
  • Python中plt.imshow(image)无法显示图片的解决

    Python中plt.imshow(image)无法显示图片的解决

    这篇文章主要介绍了Python中plt.imshow(image)无法显示图片的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • Pycharm更换python解释器的方法

    Pycharm更换python解释器的方法

    今天小编就为大家分享一篇Pycharm更换python解释器的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python实现跨excel sheet复制代码实例

    python实现跨excel sheet复制代码实例

    这篇文章主要介绍了python实现跨excel sheet复制代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Python jieba结巴分词原理及用法解析

    Python jieba结巴分词原理及用法解析

    这篇文章主要介绍了Python jieba结巴分词原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11

最新评论