を他のファイルをインポートすることはできません私はpycharmからそれを実行したときに、それがうまく動作しますが、コマンドラインから実行するとき、それはが同じディレクトリに
import util as u
ModuleNotFoundError: No module named 'util'
をI文句というスクリプトを持っていますこのアドバイスに従ってください: Script running in PyCharm but not from the command line
インタープリタは同じですが、作業ディレクトリは同じですが、sysパスは異なります。 sys.pathの要素を印刷するとき、この
mymodule
sub_1
util.py
sub_2
...
main.py
pycharmは、すべてのフォルダを示しよう
モジュールのフォルダが見えます。コマンドラインから実行しているときは、main.py
のディレクターから実行しても表示されません。 そのディレクトリからファイルを実行しても、PYTHONPATH
にディレクトリを追加する必要はありますか?すべてのプロジェクトのディレクトリが追加されてしまったような過酷な感じです。これを行う良い方法はありますか、それとも標準的な手順ですか?
がsub_1'あなたがパッケージを持っていないようだ – digitake
として.util輸入 '__init __。py'をしようと働いていましたサブパッケージでは、たくさんのiflesを含むディレクトリがあります。 'mymodule'がパッケージであれば、それを含んでいるディレクトリは' sys.path'にあります。その下にある全てのディレクトリは '__init __。py'を持っていて、その中にスクリプトを呼び出そうとしません。 lounchスクリプトは最上位ディレクトリと同じレベルにあり、基本的にはエントリポイントをインポートして呼び出す必要があります。 – RaminNietzsche
'における相対' u'が作る – mata