我想通過編寫一些帶有變量賦值和函數的Python代碼來保存複雜的配置,這些代碼和函數稍後將由ConfigReader類導入。配置知道文件名的python腳本
基本上到目前爲止,我已經寫了我的配置文件:
a=1
這就像
c=ConfigReader("C:\my_file")
print(c.a)
對於我使用EXEC()的一類,但現在我也想了配置文件知道它自己的文件名(因爲該目錄提供了一些變量的信息)
所以我需要一個配置文件,如:
a=parse_project_number_from_dir(__file__)
看來我需要在Python 3來代替EXEC()被一些小鬼模塊加載?這是執行一個簡單文件使其意識到其路徑的最簡單方法嗎?
此外,我想我的ConfigReader類讀取所有變量到字典。 (有了exec,我只看了當地人())。我現在應該做什麼,不能在配置文件中導入輔助導入(如parse_project_number_from_dir函數),而只是我在那裏實際定義的內容(即a =)?
你真正想要解決的問題?爲什麼不把文件作爲模塊導入? – Achim 2011-05-29 20:15:15
我想導入一個配置文件,該文件可以是硬盤上帶有Python代碼的任何文件。我想要頂級變量是可訪問的。顯然,文件所在的目錄名可能包含我需要在配置文件中處理的一些信息。 – Gerenuk 2011-05-29 21:49:01