12

我正在尝试使用http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server为 iphone 运行服务器

我的机器是 mac 10.6.8 Python 版本:2.7.3 我对 python 没有任何了解。我另外安装了 Twisted-12.1.0 但我仍然收到此错误。

回溯(最后一次调用):文件“chatserver.py”,第 1 行,来自 twisted.internet.protocol 导入协议,工厂文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ site-packages/twisted/internet/protocol.py",第 15 行,从 zope.interface 导入实现 ImportError:没有名为 zope.interface 的模块

后来我下载了 zope.app.wsgi-3.15.0 4 但我不知道如何使用它。

4

3 回答 3

16

问题是__init__.pyzope 目录下不存在文件,因此不会扫描该目录以进行导入。

__init__.py在 zope 目录下创建一个空白文件就可以了。

我通过执行以下命令浏览到 zope 目录解决了 UNIX 中的这个错误:

$touch __init__.py

我可以确认这也适用于 zope 接口的 virtualenv pip 安装

于 2015-10-21T14:41:34.540 回答
6

这是一个解决方案

它说通过 pip 安装 zope 模块会破坏您的 zope 安装,因为 pip 将其安装在原始 zope 模块目录以外的另一个目录中。

从链接

使用 pip 安装 zope 模块后,例如 z3c.password 您的 zope 安装会损坏。

这是因为 pip 已经将模块安装在 /usr/local/lib/python2.6/dist-packages/zope 并且原始模块 zope.interface 在 /usr/share/pyshared/zope/interface/ 并且在以下情况下具有较小的相关性输入。

对我有用的是(也在链接中给出):

cd /usr/local/lib/python2.7/dist-packages/zope 
sudo ln -s /usr/share/pyshared/zope/interface/
于 2014-03-04T10:42:00.683 回答
4

在我的脑海中,您可以为此使用easy_install。

您将需要 python-setuptools 然后您应该能够使用

easy_install zope.interface

如果我没记错的话,应该将 twisted 作为 OS X python 安装的一部分进行安装。为 Mac OS X 安装 zope.interface 做一个快速的谷歌。由于 twisted 是一个如此广泛使用的库,所以那里有很多信息。

于 2012-06-13T11:15:34.087 回答