0
を使うのですか、私はかなり単純にプロジェクト構造どのように私はPYTHONPATH
/home/user/project/
/home/user/project/bin/
/home/user/project/bin/myscript.py
/home/user/project/lib/
/home/user/project/lib/mymodule/__init__.py
/home/user/project/lib/mymodule/example.py
を持って、私は私のスクリプトからロードするために私のモジュールとクラスファイルを取得するように見えることはできませんが、それはREPL
から罰金ロード
私はPython REPLを実行すると、すべて正常に動作します。
$export PYTHONPATH=./lib:$PYTHONPATH # Making sure that the REPL and script have access
$python
Python 2.7.8 blashblahblah
...
>from mymodule.example import MyClass
>test = MyClass()
>^D
$./bin/myscript.py
Traceback (most recent call last):
File "myscript.py", line 5, in <module>
from mymodule.example import MyClass
File "/path/to/myscript.py", line 5, in <module>
from mymodule.example import MyClass
ImportError: No module named example
'python bin/myscript.py'についてはどうですか? * PYTHONPATH *はスクリプトを直接実行するときに設定されますか?ファイルの先頭で 'print(sys.path)'を試してみてください。ほとんどのことがクリアされます。 – CristiFati
上記のコードでは、pythonpathを適切に設定してエクスポートしました。私は絶対パスではなく、絶対パスを使ってみました。 PYTHONPATHは、私のpythonパスをリセットするために、REPLに対してはっきりと正しく設定されています。 – W4t3randWind