というモジュールを持っているとは思えませんZipCodeDatabase
。この命名規則は通常、class
内に存在する のために予約されていますmodule
。モジュールは通常、モジュールを含むファイルを表すために小文字または lower_snake_case です。ここにインストールしたと仮定していますpyzipcode
が、別のモジュールである可能性があります。
# assuming pyzipcode.py in the dist-packages directory
$ python -c 'from pyzipcode import ZipCodeDatabase'
上記が間違っている場合、 ZipCodeDatabaseモジュールがインストールされているバージョンの python を実行していてよろしいですか?
トラブルシューティングの手順:
$ which python
$ python --version
$ python -c 'import ZipCodeDatabase'
$ ls -l /usr/local/lib/python2.7/dist-packages/ | grep -i zip
また、その行を指定する必要は本当にありますPYTHONPATH
か? 通常、フォルダー (および拡張により、Ubuntusite-packages
のフォルダーを想定しています) は、使用している python モジュールの現在のディレクトリと共に、 default に含まれています。dist-packages
PYTHONPATH
ZipCodeDatabase はどのようにインストールしましたか? そこにファイルをドロップしただけですか?helloworld.py
ファイルと一緒に置いてから、インポートしてみてください。また、特に他の人があなたが抱えている問題を診断しようとしている場合、完全なスタック トレースはここで役立つ情報です。
編集:
さて、あなたがGoogle App Engineを使用していることがわかったので(パスの使用から明らかだったはずです-申し訳ありません)、モジュールをロードするためにsite-packages
orを使用していないようです。dist-packages
関連するサードパーティ ライブラリを使用してプロジェクト内にサブディレクトリを作成し、そのサブディレクトリをパスに追加する必要があります。免責事項:私は GAE を使用したことがないので、これでマークを逃している可能性があります。
プロジェクトを構築し、アプリケーション内から追加のディレクトリをパスに追加する方法については、この回答を確認してください。