Python 蟒蛇冲突

Python 蟒蛇冲突,python,google-app-engine,python-2.7,Python,Google App Engine,Python 2.7,我正在尝试在helloworld.py中导入ZipCodeDatabase helloworld.py存在于/google app engine/helloworld ZipCodeDatabase模块存在/usr/local/lib/python2.7/dist包 PYTHONPATH=/usr/local/lib/python/python2.7/dist-packages/usr/local/lib/python/ 在编译helloworld时,我仍然得到“ZipCodeDatabas

我正在尝试在
helloworld.py
中导入ZipCodeDatabase

  • helloworld.py
    存在于
    /google app engine/helloworld
  • ZipCodeDatabase
    模块存在
    /usr/local/lib/python2.7/dist包
  • PYTHONPATH
    =
    /usr/local/lib/python/python2.7/dist-packages/usr/local/lib/python/

在编译
helloworld
时,我仍然得到“
ZipCodeDatabase
模块未找到”。为什么它不是从
PYTHONPATH
中挑选出来的呢?

我很怀疑你有一个名为
ZipCodeDatabase
的模块。该命名约定通常为驻留在
模块中的
保留。模块通常是小写或小写,以表示包含模块的文件。我假设您已经在这里安装了
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
文件夹)与您正在使用的python模块的当前目录一起包含在默认的
PYTHONPATH

您是如何安装ZipCode数据库的?你刚才把文件放在那里了吗?尝试将它放在
helloworld.py
文件旁边,然后尝试导入它。此外,完整的堆栈跟踪在这里是有用的信息,特别是当其他人试图诊断您遇到的问题时

编辑:

好的,现在我知道您正在使用google app engine(很抱歉,从您对路径的使用中应该可以明显看出),它似乎没有使用
站点包
dist包
来加载模块。您应该在项目中使用相关的第三方库创建一个子目录,并将该子目录添加到您的路径中。免责声明:我从未使用过GAE,所以我可能会错过这个标记


查看如何构建您的项目并从应用程序中将额外目录添加到您的路径。

谢谢minitech,:)在我进行编辑之前,您打败了我thanks@minitech你还把拼写错误放回去了@贾米拉克:什么拼写错误<代码>植物激素
?抱歉,我正在使用修订版1。当我在空闲状态下使用ZipCodeDatabase时,我可以使用它,但在google app engine程序中使用时,没有发现错误模块。我不确定这是谷歌应用程序引擎问题还是一般的python问题。我查看了如何在google app engine中导入模块,但这似乎对我也不起作用。@user189364请查看以下答案和问题: