2 回答

TA貢獻(xiàn)1725條經(jīng)驗(yàn) 獲得超8個(gè)贊
我建議制作另一個(gè)文件,例如globals.py. 將其導(dǎo)入main、utils和blah,并在其中設(shè)置屬性以供其他模塊調(diào)用。例如:
globals.py
configs = {}
main.py
import .globals
...
user_configs = yaml.load('user/entered/path.yml')
globals.configs.update(user_configs) # modifies the global `configs` variable
utils.py
import .globals
...
# need to use one of the configs for something:
try:
relevant_config = globals.configs['relevant_config']
except KeyError:
print("User did not input the config field 'relevant_config'")
所有模塊都將能夠看到相同的globals實(shí)例,從而允許您在整個(gè)程序中使用有效的全局變量。
您可以簡單地將其保存configs為 gobal 變量,main.py并擁有utils.py和blah.py導(dǎo)入.main,但是為此指定一個(gè)模塊比讓其他模塊導(dǎo)入主模塊更干凈、更清晰。

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊
做就是了
import main
并將其用作
main.dictionary
應(yīng)該這樣做!
添加回答
舉報(bào)