Python中的enum的使用方法
為什么要使用Enum.(Why?)
在普通類別中,枚舉和我們在對象中定義的類變量一樣的,每一個類變量就是一個枚舉項,
訪問方式如下:
class HelloWolrd: life = 0 literature = 1 science = 2 math = 3 person = -1 xzh = 0 lq = 3 wj = 2 print(HelloWolrd.lq) HelloWolrd.lq = 9 print(HelloWolrd.lq)
這樣的使用方法是存在兩個問題的,即:
枚舉類中,不應該存在key相同的枚舉項(類變量) 不允許在類的外部直接修改枚舉項的值
為了解決這個問題,我們考慮使用enum模塊.
使用enum
enum模塊是系統(tǒng)內(nèi)置模塊,可以直接使用import導入,但是在導入的時候,不建議直接使用import enum將enum模塊全部導入,一般使用Enum, IntEnum,unique等.
from enum import Enum class HelloWolrd(Enum): literature = 1 person = -1 xzh = 0 lq = 3 wj = 2 print(HelloWolrd.lq) print(HelloWolrd.lq.value)
使用了Enum后面,有下面的限制:
- 枚舉類不能用來實例化對象
- 訪問枚舉類中的某一項, 直接使用類名加上要訪問的項即可, 比如color.YELLOW
- 枚舉類里面定義的Key = Value, 在類外部不能修改Value值.
如果在枚舉類中的不同的key對應的value也想不同,那么在導入Enum的同時,需要導入unique如果想要value都是Int類型的,可導入IntEnum
到此這篇關于Python中的enum的使用方法的文章就介紹到這了,更多相關Python enum 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解決Pycharm無法import自己安裝的第三方module問題
今天小編就為大家分享一篇解決Pycharm無法import自己安裝的第三方module問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05Python3使用騰訊云文字識別(騰訊OCR)提取圖片中的文字內(nèi)容實例詳解
這篇文章主要介紹了Python3使用騰訊云文字識別(騰訊OCR)提取圖片中的文字內(nèi)容方法詳解,需要的朋友可以參考下2020-02-02詳解vscode實現(xiàn)遠程linux服務器上Python開發(fā)
這篇文章主要介紹了vscode實現(xiàn)遠程linux服務器上Python開發(fā),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11