Python 'モジュール名がありません' エラー; 'パッケージ' はパッケージではありません 質問する

Python 'モジュール名がありません' エラー; 'パッケージ' はパッケージではありません 質問する

簡単なインポートを行い、emailage サードパーティ ライブラリを使用しようとしています。

ドキュメントによると、ライブラリの使用方法は次のとおりです。

pip install emailage-official

次に、次のようにインポートします。

from emailage.client import EmailageClient

インストールは pip で正常に動作し、エラーは発生しません。emailage パッケージが適切なディレクトリ内に存在することを再度確認しましたが、存在しています。

パッケージは次の場所に存在します:

C:\Users\aaron\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\emailage

このフォルダには、(一見)正しいファイルと__init__.pyその他すべてが含まれています。しかし、pylint とコマンド ライン インタープリタの両方で、「'emailage.client' という名前のモジュールがありません。'emailage' はパッケージではありません」というエラーが発生します。

私の出力はsys.path次のようになります:

[... 
'C:\\Users\\aaron\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\site-packages'
...
]

したがって、emailage がインストールされているディレクトリはパスの一部です...最後に、numpy を pip でインストールして、正常に動作するかどうかをテストしました。Numpy は emailage と同じ site-packages フォルダーにインストールされ、インポートすると正常に動作するので、行き詰まっています。

私は普段 Python をあまり使用しないので、どんな助けでもいただければ幸いです。

ベストアンサー1

問題はファイルの命名

急いでファイルに名前を付けてemailage.py、からインポートしようとしましたemailage.client

Python は、インストールされているサードパーティ ライブラリをチェックする前に、現在のディレクトリを調べて、作業中のファイルの名前を一致させたと想定しています。

ファイル名を変更した後、すべて問題ないようです。

同様の問題に遭遇した人のために――矛盾した名前に注意する時々、最も単純なことが、最も長くあなたを困らせることがあります。

おすすめ記事