python使用enum進(jìn)行枚舉的比較
1、說明
(1)枚舉成員未被排序,因此它們僅支持通過is和==進(jìn)行比較。大小比較引發(fā)TypeError異常。
(2)繼承IntEnum類創(chuàng)建的枚舉類,成員間支持大小比較。
2、實(shí)例
importenum
classBugStatus(enum.Enum):
new=7
incomplete=6
invalid=5
wont_fix=4
in_progress=3
fix_committed=2
fix_released=1
actual_state=BugStatus.wont_fix
desired_state=BugStatus.fix_released
print('Equality:',
actual_state==desired_state,
actual_state==BugStatus.wont_fix)
print('Identity:',
actual_stateisdesired_state,
actual_stateisBugStatus.wont_fix)
print('Orderedbyvalue:')
try:
print('\n'.join(''+s.nameforsinsorted(BugStatus)))
exceptTypeErroraserr:
print('Cannotsort:{}'.format(err))
#output
#Equality:FalseTrue
#Identity:FalseTrue
#Orderedbyvalue:
#Cannotsort:'<'notsupportedbetweeninstancesof'BugStatus'and'BugStatus'
以上就是python使用enum進(jìn)行枚舉比較的方法,希望對(duì)大家有所幫助。更多Python學(xué)習(xí)教程請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。