a.py
にいくつかの関数を書きました。私は pythonバイナリでa.py
を実行します。 a.py
の内部では、私は利用できないモジュールをインポートする別のファイルから関数をインポートしますか?
import some_module
def simple_function():
...
def complex_function():
some_module.some_func()
は今、私は別のpython(ソフトウェア・バンドルのインストール)で実行されなければならない、b.py
へsimple_function()
をインポートする必要があり、これのpythonはsome_module
がインストールされていません。
b.py
(これにはfrom a import simple_function
という行が含まれています)をソフトウェアバンドルのpythonで実行すると、このエラーが予想どおりに発生しました。
ImportError: No module named 'some_module'
周囲には道がありますか?ご覧のとおり、simple_function()
にはsome_module
は必要ありません。
1つの解決策は、インポートステートメントをcomplex_function
に入れることです。
def simple_function():
...
def complex_function():
import some_module
some_module.some_func()
しかし、私は確かにリンターとフォーマットチェッカーはそれについて文句を言うでしょう。より良いソリューション?
感謝をインストールすることです。私は最初の解決策をとるつもりです。いくつかのソフトウェアバンドルされたpythonはdevバージョンではなく、 'Python.h'もありません - モジュールをインストールするのは本当に難しいです... –
python環境を作るためにminicondaを使うことを強くお勧めします。 https://conda.io/docs/install/quick.html?highlight=mini – Alexander