国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

python模擬enum枚舉類型的方法小結(jié)

2020-02-23 01:00:50
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例總結(jié)了python模擬enum枚舉類型的方法。分享給大家供大家參考。具體分析如下:

python中沒有enum枚舉類型,可能python認(rèn)為這玩意壓根就沒用,下面列舉了三種方法模擬enum枚舉類型

方法1. 使用自定義類

class Numbers(object):  ONE = 1  TWO = 2  THREE = 3assert Numbers.ONE == 1assert Numbers.TWO == 2assert Numbers.THREE == 3

方法2:使用函數(shù)動(dòng)態(tài)創(chuàng)建類

def enum(**enums):  return type('Enum', (object,), enums)Numbers = enum(ONE=1, TWO=2, THREE=3)assert Numbers.ONE == 1assert Numbers.TWO == 2assert Numbers.THREE == 3

方法3:創(chuàng)建一個(gè)從python的集合擴(kuò)展來(lái)的對(duì)象

class Enum(set):  def __getattr__(self, name):    if name in self:      return name    raise AttributeErrorNumbers = Enum( "ONE TWO THREE".split() )error = Falsetry:  print Numbers.ONE  print Numbers.TWO  print Numbers.THREEexcept:  error = Trueassert error == Falsetry:  print Numbers.FOURexcept:  error = Trueassert error == True

希望本文所述對(duì)大家的python程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 即墨市| 临洮县| 龙州县| 通江县| 东乌珠穆沁旗| 宜良县| 马鞍山市| 拜泉县| 达日县| 宜君县| 阳东县| 宿迁市| 成武县| 沅陵县| 镇康县| 余庆县| 崇义县| 布尔津县| 长白| 万年县| 溧水县| 客服| 防城港市| 磴口县| 上饶县| 报价| 焦作市| 丘北县| 贡嘎县| 临安市| 黄山市| 济源市| 蕲春县| 石台县| 尚义县| 景洪市| 阿克陶县| 泸溪县| 屏山县| 山西省| 锡林郭勒盟|