编程语言
首页 > 编程语言> > 在python中的zope.interface.registry中导入错误

在python中的zope.interface.registry中导入错误

作者:互联网

我正在虚拟环境中安装项目.我收到了错误

from zope.interface.registry import Components
Traceback (most recent call last):
  File "<console>", line 1, in <module>
ImportError: No module named registry

该模块的版本为4.0.5

>>> import pkg_resources
>>> pkg_resources.get_distribution("zope.interface").version
'4.0.5'

我在我的机器上尝试了相同的操作(不是虚拟环境),

>>> import pkg_resources
>>> pkg_resources.get_distribution("zope.interface").version
'4.0.1'
>>> from zope.interface.registry import Components

这里从zope.interface.registry导入组件没有给出任何错误.根据this

QUOTE: 3.8.0 (2011-09-22) 
New module zope.interface.registry. This is code moved from 
zope.component.registry which implements a basic nonperistent component registry 
as zope.interface.registry.Components.

,它不应该给出任何错误.有什么建议我在这里缺少或如何解决这个错误?

解决方法:

我有类似的错误 – 我试图创建没有站点包的新虚拟环境.它创造了一切美好.但是我的ubuntu已经安装了zope.interface供自己使用,所以它不想在我的venv之外安装它.

这个碰撞导致我的venv在mod_wsgi下的简单测试应用程序中抛出错误:

     from zope.interface.registry import Components
ImportError: No module named registry

所以我试图从基础python中删除zope.interface.但unistall命令没有删除它(我发现在谷歌,它已知问题).

比我找到的解决方案:我刚刚切换到我的venv并命​​令从那里“升级”zope.interface:

(env)user@ubuntu:~/env$sudo pip install --upgrade zope.interface

在此之后我的zope.interface问题解决了.

您的问题类似,所以我的解决方案可以提供帮助.无论如何,这个答案对于ubuntu桌面用户非常有用.

标签:python,importerror,zope-interface
来源: https://codeday.me/bug/20190625/1285248.html