2017-06-01 9 views
1

ファイルパスを使用してPythonモジュールをインポートできますが、現在のファイルの位置からファイルをインポートする方法はありますか?同じプロジェクトフォルダ内のモジュールをインポートする

たとえば、スクリプトが私が作業しているフォルダと同じフォルダにある場合にのみ、「ファイルをインポートする」ように見えます。ファイルが完全なファイルパスを指定せずに、鉱山の外のフォルダまたは階層の下のフォルダにある場合、ファイルをインポートするにはどうすればよいですか?私はプロジェクトフォルダを移動してもすべてがうまくいくようにしたいと思います。

+0

[異なるフォルダからモジュールをインポートする](https://stackoverflow.com/questions/13598958/import-modules-from-different-folders)の可能な複製 –

答えて

0

パスを使用して単一のPythonファイルをインポートすることは不可能です。 Pythonではモジュールを扱う必要があります。最善のソリューションは、外部フォルダスクリプトからモジュールを作成し、システムモジュールのパスに入れることです。

+0

'sys.path.append( '/ home/dir1/dir2/dir3 ') ' –

+0

モジュールが入っているフォルダ(pythonスクリプトファイルだけでなく)へのパスである場合のみ。 sys.path変数は、モジュールのインタープリタの検索パスを決める文字列のリストです。* –

+1

したがって、ドキュメントに沿ってこの 'sys.path'(文字列のリスト)を変更し、目的のpythonファイルがあるフォルダのパス。これはお勧めできませんが、それを行うにはまだ有効なハックです。また、 '__init __。py'という空のファイルを使うこともできます。また、この質問はこの[質問](https://stackoverflow.com/questions/13598958/import-modules-from-different-folders)と重複しています。 –

関連する問題