首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法导入名称ContextualZipFile

无法导入名称ContextualZipFile
EN

Stack Overflow用户
提问于 2018-01-02 00:13:36
回答 2查看 11.1K关注 0票数 3

下面是我尝试安装sqalchemy时得到的结果

代码语言:javascript
运行
复制
Traceback (most recent call last):
  File "/usr/bin/easy_install", line 11, in <module>
    load_entry_point('setuptools==33.1.1', 'console_scripts', 'easy_install')()
  File "/home/j/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 572, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/home/j/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2755, in load_entry_point
    return ep.load()
  File "/home/j/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2408, in load
    return self.resolve()
  File "/home/j/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2414, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 51, in <module>
    from setuptools.archive_util import unpack_archive
  File "/usr/lib/python2.7/dist-packages/setuptools/archive_util.py", line 12, in <module>
    from pkg_resources import ContextualZipFile
ImportError: cannot import name ContextualZipFile

我尝试过安装和卸载setuptools。

我还尝试在我的usr/local/lib/python2.7/dist-packages/setuptools/archive_util.py.中将"from pkg_resources import ensure_directory,ContextualZipFile“更改为"from pkg_resources import ensure_directory然而,我得到了错误

代码语言:javascript
运行
复制
Best match: MySQL-python 1.2.5
Processing MySQL-python-1.2.5.zip
Traceback (most recent call last):
  File "/usr/bin/easy_install", line 11, in <module>
    load_entry_point('setuptools==33.1.1', 'console_scripts', 'easy_install')()
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 2325, in main
    **kw
  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 436, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 699, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 725, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 876, in install_eggs
    unpack_archive(dist_filename, tmpdir, self.unpack_progress)
  File "/usr/lib/python2.7/dist-packages/setuptools/archive_util.py", line 53, in unpack_archive
    driver(filename, extract_dir, progress_filter)
  File "/usr/lib/python2.7/dist-packages/setuptools/archive_util.py", line 102, in unpack_zipfile
    with ContextualZipFile(filename) as z:
NameError: global name 'ContextualZipFile' is not defined

我也尝试过直接导入pkg_resources,但仍然找不到ContextualZipFile。我得到了错误:

代码语言:javascript
运行
复制
NameError: global name 'ContextualZipFile' is not defined

我使用python version = 2.7.13和pip version = 9.0.1

我也是在虚拟环境中这样做的。

EN

Stack Overflow用户

发布于 2018-09-14 23:52:01

这是一个相当糟糕的技巧,但我刚刚注释掉了导入,easy_install似乎工作得很好。将相应的行更改为:

代码语言:javascript
运行
复制
from pkg_resources import ensure_directory#, ContextualZipFile

注意:这是一个系统文件,所以您必须使用sudo权限来更改它。您可以使用:sudo vim filename来完成此操作。

这不是一个很好的修复方法,但是如果你需要让它在短时间内工作,这应该能起到作用。希望这能有所帮助!

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48051219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档