私はすべてのsettings.pyファイルが変数Pythonのimport同じファイル名を
DOMAIN_KEY =「」
が方法はありますがあり、以下の構造
sites
- SiteA
- Settings.py
- SiteA
- Settings.py
- SiteA
- Settings.py
を持っていますプログラムでこの構造体をインポートし、この変数をすべての設定ファイルで調べて印刷しますか?
EDIT(更新されたコード):インポートが正常に動作していない
with cd(os.path.join(APPLICATION_DIR, 'config', 'sites')):
output = run ("ls -l | grep \"^d\"|awk {'print $8'}") # run will execute and return list of folders
for file in output.split():
__module = __import__('%s' % file)
print __module
print __module.TIME_ZONE
print __module.SITE_ID
、私はフォルダ名を知らなくても、設定ファイルをインポートする方法を確認していません。
import SiteA.Settings as A, SiteB.Settings as B, SiteC.Settings as C
print(A.DOMAIN_KEY, B.DOMAIN_KEY, C.DOMAIN_KEY)
EDIT:別のオプションは、あなたがそのでモジュールをロードすることができます__import__()
声明、だろうあなたはこれらのモジュールと、このようにその変数にアクセスすることができ、重複するファイル名を持っていないと仮定すると
"SiteA"はディレクトリ名ですか?彼らは本当に別の名前を持つべきですか?実行しているスクリプトの場所は何ですか? – viraptor
siteAは__init__.pyファイルを持つpythonディレクトリです。スクリプトは、メインディレクトリ(サイト)から実行されます。 –