我正试图在import ZipCodeDatabase in helloworld.py。
helloworld.py存在于/google-app-engine/helloworldZipCodeDatabase模块存在/usr/local/lib/python/python2.7/dist-packagesPYTHONPATH = /usr/local/lib/python/python2.7/dist-packages;/usr/local/lib/python/在编译helloworld时,我仍然得到"ZipCodeDatabase模块未找到“。为什么不从PYTHONPATH中挑选
发布于 2013-04-20 07:36:30
我非常怀疑您是否有一个名为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行吗?通常,site-packages文件夹(以及扩展到Ubuntu上的dist-packages文件夹)包括在默认PYTHONPATH中,以及您正在使用的python模块的当前目录中。
您是如何安装ZipCodeDatabase的?你刚把文件放进去了吗?尝试将它放在您的helloworld.py文件旁边,然后尝试导入它。此外,完整的堆栈跟踪在这里是有用的信息,特别是当其他人试图诊断您遇到的问题时。
编辑:
好吧,现在我知道你在使用谷歌应用引擎(从你使用路径时应该很明显--对不起),看起来它不使用site-packages或dist-packages来加载模块。您应该使用相关的第三方库在项目中创建一个子目录,并将该子目录添加到您的路径中。免责声明:我从来没有使用过GAE,所以我可能错过了这个标记。
查看this answer,了解如何构造项目并从应用程序中将额外的目录添加到路径中。
https://stackoverflow.com/questions/16116771
复制相似问题