2016-09-13 1 views
0

私はいくつかのスクリプトを持っていると言って、機能はmy_functionです。さて、この関数はいくつかのパッケージを必要とします。私はどこかにこの機能を使用する場合、私はスクリプトから関数を呼び出し、すべてのパッケージを再インポートしますか?

from my_file import my_function 
my_function() 

しかし、この時点では、呼び出しがで停止しますと言って、今

import package_A 
import package_B 

def my_function(): 
    do_something 

:それでは、ファイルは次のようになりましょうpackage_Aとpackage_Bがわかっていないというエラーです。

どうすれば解決できますか? my_functionを呼び出すスクリプトで、私がmy_functionに行ったすべての輸入をやり直す必要がありますか?もしそうなら、そのファイル内のすべてのインポートを自動的にチェックしてインポートする方法はありますか?

+2

は 'package_A'とあなたの' PYTHONPATH'に見える 'package_B'の場所はありますか? – kfb

+0

この質問はすでにここで回答済みです:http://stackoverflow.com/questions/13598958/import-modules-from-different-folders – JaydenMedia

+0

@kfb、はい。もし私には分かりませんが、私がここで言及しているパッケージはかなり一般的です。 numpy、scipyと思う。だから、これは道にある。しかし、my_fileにnumpyをインポートしても、my_fileをインポートするスクリプトにインポートしなかった場合、このエラーが表示されます。つまり、my_functionを呼び出すと、関連するすべてのパッケージがロードされることをどのように確認できますか? – user1991

答えて

-1

お互いを呼び出すいくつかのスクリプトを呼び出すことで、各スクリプトで複数のパッケージをインポートすることができ、そのスクリプトの関数に必要なパッケージがあるまでエラーを投げません。

Found this link which will answer your question better

+1

"あるスクリプトでパッケージをインポートし、そのパッケージを別のスクリプトで使用することはできません。" ...はいはいできます。 –

+0

私の悪いこと、ただ答えを編集しました。 –

関連する問題