2017-01-25 11 views
3

ファイル* classes.pyから*をインポートしようとしています。インポート時にモジュールが見つかりませんでした

mypkg 
├── main.py 
├── classes.py 

を次のように私はそれは、クラスを認識しない

from classes import * 

をしようとすると私のディレクトリです。それを見て私は、クラスを認識しませんが、私はそれを実行しようとすると、以下のエラーを与える明示的なインポート

from .classes import * 

を使用すべきであることがわかりました。

ModuleNotFoundError: No module named '__main__.classes'; '__main__' is not a package 

何をすべきか、なぜこれが起こっているのかについてのアドバイスは、大変に感謝しています。パッケージとしてフォルダを認識するpythonについては

+0

どのようにしてどのディレクトリからコードを実行しますか? –

答えて

1

、あなたはそれで__init__.pyファイルが必要です。

mypkg 
├── __init__.py 
├── main.py 
├── classes.py 

pythonが起動されたディレクトリは、(パッケージフォルダ内から実行すると、から実行しているとは異なっていることも重要です外部)、また、PYTHONPATHという環境変数もあります。

のセクションとして、python documentationとパッケージシステムについて説明しています。

関連する問題