python物件導向程式設計高階篇之列舉類Enum

2021-10-10 06:28:40 字數 1272 閱讀 1562

我們可以定義月份,比如

from enum import enum

month = enum('month', ('jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'))

for name, member in month.__members__.items():

print(name, '=>', member, ',', member.value)

month下有12個例項,value分別賦值1,2,3...

可以直接使用month.jan

from enum import enum, unique

@unique

class weekday(enum):

sun = 0 # sun的value被設定為0

mon = 1

tue = 2

wed = 3

thu = 4

fri = 5

sat = 6

>>> for name, member in weekday.__members__.items():

... print(name, '=>', member)

sun => weekday.sun

mon => weekday.mon

tue => weekday.tue

wed => weekday.wed

thu => weekday.thu

fri => weekday.fri

sat => weekday.sat

>>> day1 = weekday.mon

>>> print(day1)

weekday.mon

>>> print(weekday.tue)

weekday.tue

>>> print(weekday['tue'])

weekday.tue

>>> print(weekday.tue.value)

2>>> print(day1 == weekday.mon)

true

>>> print(day1 == weekday.tue)

false

>>> print(weekday(1))

@unique裝飾器可以幫助我們檢查保證沒有重複值。

呼叫方法很簡單weekday.mon

python物件導向程式設計高階篇 slots

python語言中我們可以隨時給例項增加新的屬性和方法 class student object pass s student s.name michael 動態給例項繫結乙個屬性 print s.name michael def set age self,age 定義乙個函式作為例項方法 self...

Python物件導向程式設計高階

在前面的章節我們已經了解了物件導向的入門知識,知道了如何定義類,如何建立物件以及如何給物件發訊息。為了能夠更好的使用物件導向程式設計思想進行程式開發,我們還需要對python中的物件導向程式設計進行更為深入的了解。property裝飾器 之前我們討論過python中屬性和方法訪問許可權的問題,雖然我...

python 物件導向(高階篇)

文章摘自 類的成員可以分為三大類 字段 方法和屬性 方法 普通方法,靜態方法,類方法。屬性 普通屬性 字段包括 普通欄位和靜態字段,他們在定義和使用中有所區別,而最本質的區別是記憶體中儲存的位置不同,class student school python學院 def init self,name,a...