これと数時間苦労した後、私はウィットの終わりにいます。PYTHONPATHはUbuntuのsys.pathには含まれていません16.04
自分のプロジェクトのPythonモジュールをPYTHONPATHに含めて、Pythonインタプリタで解決できるようにしてimport
で利用できるようにしたいとします。
マイプロジェクトフォルダは、次のようになります。
PYTHONPATH="${PYTHONPATH}:/home/john/my_project/"
私のシェルを再起動した後、私はそれをエコーすることができます:
$ echo $PYTHONPATH
:/home/john/my_project/
私はこのような
/etc/bash.bashrc
でPYTHONPATHを輸出してきました
my_project/
module1/
__init__.py
module1.py
module2/
__init__.py
module2.py
その後、私はPythonのコマンドラインを起動し、何を見ますかsys.path
になった:
/home/john/my_project/
が含まれていなかった
$ source /home/john/my_env/bin/activate
(my_env)$ python3
>>> import os
>>> sys.path
['', '/home/john/my_env/lib/python35.zip', '/home/john/my_env/lib/python3.5', '/home/john/my_env/lib/python3.5/plat-x86_64-linux-gnu', '/home/john/my_env/lib/python3.5/lib-dynload', '/usr/lib/python3.5', '/usr/lib/python3.5/plat-x86_64-linux-gnu', '/home/john/my_env/lib/python3.5/site-packages']
とimport module1
は失敗します。
私が考えることができる最後のことは、Pythonは私のPYTHONPATH変数を見ることができないので、内容をsys.path
に追加しないことです。
あなたは私の間違いを知りますか?
ありがとうございます。
、これupvoteを。悲しいかな、重複しています。あなたの検索で見逃したキーワードはおそらく 'virtualenv'でした。 – msw