Python 中愉快地使用 enum

枚舉類型,到底需要不需要?

Python 2.x 中是沒(méi)有原生的枚舉類型的,可能有些人覺(jué)得這不算個(gè)事,他們使用類,字典,或者元組來(lái)封裝成枚舉類型,但是這樣做,一來(lái)不方便,二來(lái)稍顯別扭,三是拓展性還不好。

我覺(jué)得枚舉類型還是要有的,有些場(chǎng)景下,定義一個(gè)枚舉類,就是很方便,看著也舒服自然。

Python 2.x,Python 3.x 中如何使用枚舉

Python 2.x 中需要安裝一個(gè)第三方包(pip install enum34)。
然后使用

import enum


class BugStatus(enum.Enum):

    new = 7
    incomplete = 6
    invalid = 5
    wont_fix = 4
    in_progress = 3
    fix_committed = 2
    fix_released = 1

Python 3.x 中已經(jīng)內(nèi)置了這個(gè)包,只需要從標(biāo)注庫(kù)中導(dǎo)入就可以了。

import enum


class BugStatus(enum.Enum):

    new = 7
    incomplete = 6
    invalid = 5
    wont_fix = 4
    in_progress = 3
    fix_committed = 2
    fix_released = 1

至此,我們就可以愉快地使用枚舉來(lái)封裝我們的邏輯了,確實(shí)是方便不少,也很自然。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,057評(píng)論 25 709
  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個(gè) Awesome - XXX 系列...
    aimaile閱讀 26,836評(píng)論 6 427
  • GitHub 上有一個(gè) Awesome - XXX 系列的資源整理,資源非常豐富,涉及面非常廣。awesome-p...
    若與閱讀 19,322評(píng)論 4 417
  • 環(huán)境管理管理Python版本和環(huán)境的工具。p–非常簡(jiǎn)單的交互式python版本管理工具。pyenv–簡(jiǎn)單的Pyth...
    MrHamster閱讀 3,956評(píng)論 1 61
  • 一陣清風(fēng)吹過(guò)帶走了花香。 望著窗外格外明亮的月亮。 眼里盛著滿滿的淚水。 腦海里有一個(gè)人。 怎么也看不清模樣。
    雨里的瘋子閱讀 435評(píng)論 0 0

友情鏈接更多精彩內(nèi)容