我有一個對象需要通過讀取配置文件和環境變量來初始化。它有類方法,我想確保在執行classmethod之前初始化對象。如何在調用類方法(如Java/Spring)之前設置對象?
有什麼辦法可以初始化這種性質的所有類?我的代碼中可能會有很多這樣的代碼。 我來自Java/Spring背景,只需將@Service
放在類上,或者將@PostConstruct
放在初始化方法上,以確保它被調用。如果在普通的Python中沒有一個乾淨的方法來做到這一點,是否有框架可以使這更容易?
因此類看起來像這樣
class MyClass(object):
def setup(self):
# read variables from the environment and config files
@classmethod
def my_method(cls, params):
# run some code based on params and variables initialised during setup
你確定*你需要這些方法才能成爲類方法嗎?聽起來就像你有一些國家在這裏管理。 –
這是一個全局狀態,就像代碼運行的特定環境的數據庫端點和url一樣 –
然後使'setup'成爲一個類方法,並且總是調用它,並且讓這個方法檢查一個全局是否已經被設置? –