0

タイトルは正しくないかもしれませんが、これは私が考えることができる最も近いものです。

argparseを使用して作成されたコマンドラインパーサーのようなファイルsample.pyがあります。引数に基づいて、他の python ファイルを呼び出しています。例 - -C でモジュール オプションをコンパイルします。

cmd>python sample.py -M module -C

モジュール名に基づいて、構成ファイルは module/configuration.py の下にあります

configuration.py ファイルからいくつかの関数を呼び出す必要があります。最善の方法は何ですか。パスは常に異なり、実行時にファイルをインポートする必要があるため、python ファイルをインポートできません。

この問題を解決する方法はありますか?

importlib パッケージについて読んだことがありますが、自分の用途に合わせて動作させることができませんでした。

私のフレームワークの構造:

sample.py
|
APIs
   |
    compile.py

/module/configuration.py

compile.py ファイルのサンプル

 #compile.py
import <packages>

def compile(module_name):
    # call some function in /module/configuration.py file.

問題は、module_name がコンパイル関数で渡されるため、インポートで使用できないことです。

私の質問は長すぎるか、あまりにも明白すぎるかもしれませんが、私は多くの苦労をしてきました. どんな助けでも大歓迎です。

4

1 に答える 1