1
我有一個包含.py腳本的文件夾,每個文件夾都包含一個我在其他腳本中需要的變量,如果從該文件夾使用某個腳本。從不同文件夾的多個庫中導入一個相同的變量
- folder_x
- main.py
- folder_y
- script1.py
- script2.py
- script3.py
所以所有的腳本都不是在同一時間只使用其中的一個。
我發現這個解決方案https://stackoverflow.com/a/35524184/5708537 它運作良好,但我必須手動列出所有腳本。 我認爲我這個自動化,使文件的列表,並剝離下來結束的.py:
path = '/home/folder_x/folder_y'
files = os.listdir(path)
module_list = [i for i in files if i.endswith('.py')]
module_list = [os.path.splitext(x)[0] for x in module_list]
就像一個魅力。
但是這部分代碼仍然認爲,腳本在folder_x
variables = {}
for mod_name in module_list:
mod = import_module(mod_name)
variables[mod_name] = getattr(mod, 'var')
所以,我怎麼能告訴該腳本在folder_y並採取可變那些?
或者是否有更好的方法來列出其他文件夾中的腳本/模塊,並從每個文件夾中獲取變量?
是的,我知道,但我想保持分開。 – Taapsa