枚舉類型,到底需要不需要?
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í)是方便不少,也很自然。