我正在定義一個 PythonHoliday類和三個子類:一個用于固定日期假期,第二個用于相對假期,第三個用于浮動星期一假期。我想在超類中創建一組常量,Holiday以便應用程序可以簡單地將特定假期稱為Holiday.NEW_YEARSHoliday.CHRISTMASetc.但是在實例化父類時子類顯然不存在。我怎樣才能做到這一點?class Holiday(object): NEW_YEARS = FixedHoliday(1, 1) MLK_BIRTHDAY = FloatingMonday(1, 15) ...
2 回答

慕的地8271018
TA貢獻1796條經驗 獲得超4個贊
一個類不能也不應該引用它的派生類。試試這個:
class BaseHoliday(object):
pass
class FixedHoliday(BaseHoliday):
# class code
# more classes
class Holidays(object):
NEW_YEARS = FixedHoliday(1, 1)
MLK_BIRTHDAY = FloatingMonday(1, 15)
添加回答
舉報
0/150
提交
取消