對於vip鑽石顏色表示
from enum import enum
class
vip(enum)
: yellow =
1 green =
2 black =
3 red =
4# 賦值時也可以是不相等的字串
print
(vip.yellow)
#輸出vip.yellow
列舉就是乙個類
其他實現方法:
# 模組中定義變數
yellow =
1green =
2black =
3red =
4# 使用字典
# 使用類封裝資料
class
typediamod()
:yellow =
1green =
2black =
3red =
4
缺點:
from enum import enum
class
vip(enum)
: yellow =
1 green =
2 black =
3 red =
4print
(type
(vip.yellow)
)print
(vip.yellow.name)
print
(type
(vip.yellow.name)
)print
(vip.yellow.value)
print
(type
(vip.yellow.value)
)print
(vip[
"yellow"])
#輸出>
# 表示列舉型別
yellow # 列舉名稱,標籤名
<
class
'str'
>
# 列舉名稱的型別:字串
2#列舉值
<
class
'int'
>
vip.yellow # 列舉型別
等值比較運算
print
(vip.yellow == vip.yellow)
# 輸出
true
from enum import enum
class
vip(enum)
: yellow =
1 green =
2 black =
3 red =
4for v in vip:
print
(v)# 輸出
vip.yellow
vip.green
vip.black
vip.red
列舉的注意事項:
enum:不限制列舉型別數值的資料型別
intenum:限制列舉型別數值必須為整形
列舉型別是單例模式(23種設計模式中的一種),不能例項化
加上裝飾器 unique :規定兩個不同的列舉型別不能取相同數值
from enum import enum
from enum import intenum, unique
@unique
class
vip(intenum)
: yellow =
1 green =
1 black =
3 red =
4# 輸出
valueerror: duplicate values found in
>
: green -
> yellow
python3中異常處理 Python3異常處理
python的異常處理機制 使用 try.except 捕獲異常 try 業務實現 except error1,error2,as e 出現異常後的處理 異常類的繼承關係 baseexception systemexit keyboardinterrupt generatorexit excepti...
python3怎麼賦值 python3中賦值問題?
我閒著沒事乾來詳細回答一波。phthon的物件實際儲存在記憶體上,而變數名對應了乙個位址,位址指向了那一塊記憶體。在第一例中,python在記憶體中開出了一片用來儲存int值1,然後將它的位址賦值給a,接下來a把位址賦值給b。此時a,b指向同乙個int值物件。後來b 1的操作做的是先計算b 1,計算...
python3中的字典
字典是一種對映,eng2sp dict print eng2sp eng2sp one undo print eng2sp eng2sp two df print eng2sp d eng2sp one print d 字典中的順序是不可預料的 a len eng2sp 顯示鍵值對的個數 print...