ファイルシステムのどこかに別のスクリプトをインポートしようとしているpythonスクリプトがあります(パスは実行時にのみ認識されます)。私の理解では、impモジュールを使用する必要があり、これは機能する可能性がありますが、モジュールをロードすると、インポートされたモジュールで使用されているモジュールが見つからないというエラーが表示されます。
コードは次のとおりです。
インポーター.py:
import imp
imp.load_compiled("my_module","full_path_to_my_module\\my_module.pyc")
my_module.py:
import sys
import another_module
importer.py を実行すると、htis エラー メッセージが表示されます。
ImportError: another_module という名前のモジュールがありません
ここで何がうまくいかないのですか?「importer.py」が「my_module.pyc」をロードしているときに、彼は「another_module」もロードしようとしていますが(それは良いことです)、間違った場所を探していると思われます(たとえば、「full_path_to_my_module」ではありません)
編集: システムパスに「full_path_to_my_module」を追加してみました:
import imp
import sys
sys.path.append(full_path_to_my_module)
imp.load_compiled("my_module",full_path_to_my_module+my_module)
しかし、私はまだ同じエラーが発生します
たぶん、私は必要のないことをします-これが私の目標です:「importer.py」内の「my_module.pyc」のすべての機能を使用できるようにしたいです。ただし、「my_module.pyc」の場所は、「importer.py」へのパラメーターとして指定されます。