当我尝试使用pip
安装某些东西时,会收到消息
You are using pip version 18.0, however version 18.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
但是,当我按照此处的建议操作时,我会得到:
使用缓存收集点 https://files.pythonhosted.org/packages/c2/d7/90f34cb0d83a6c5631cf71dfe64cc1054598c843a92b400e55675cc2ac37/pip-18.1-py2.py3-none-any.whl 例外:追溯(最近一次呼叫最近):文件 “ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/init.py”, _dep_map中的第2862行 返回自己。 dep_map文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init.py”, 第2669行,位于 getattr 引发AttributeError(attr)AttributeError:_DistInfoDistribution__dep_map
在处理上述异常期间,发生了另一个异常:
回溯(最近通话最近):文件 “ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/packaging/requirements.py”, 第93行,初始化 req = REQUIREMENT.parseString(requirement_string)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pyparsing.py”, 第1632行,在parseString中 提高exc文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pyparsing.py”, 第1622行,在parseString中 loc,令牌= self._parse(instring,0)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pyparsing.py”, _parseNoCache中的第1379行 loc,tokens = self.parseImpl(instring,preloc,doActions)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pyparsing.py”, 在parseImpl中的第3395行 loc,exprtokens = e._parse(instring,loc,doActions)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pyparsing.py”, _parseNoCache中的第1383行 loc,tokens = self.parseImpl(instring,preloc,doActions)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pyparsing.py”, 在parseImpl中的第3183行 引发ParseException(instring,loc,self.errmsg,self)pip._vendor.pyparsing.ParseException:预期的stringEnd(位于char 33), (行:1,列:34)
在处理上述异常期间,发生了另一个异常:
回溯(最近通话最近):文件 “ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/init.py”, 第2942行,在 init 中 超级(需求,自我)。初始化(requirement_string)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/packaging/requirements .py”, 第97行,初始化 require_string [e.loc:e.loc + 8]))pip._vendor.packaging.requirements.InvalidRequirement:无效 要求,解析错误为“';多余的'”
在处理上述异常期间,发生了另一个异常:
回溯(最近通话最近):文件 “ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_internal/basecommand.py”, 228号线,在主要 status = self.run(options,args)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_internal/commands/install.py”, 318行,正在运行 self._warn_about_conflicts(to_install)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_internal/commands/install.py”, _warn_about_conflicts中的第442行 package_set,_dep_info = check_install_conflicts(to_install)文件 “ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_internal/operations/check.py”, 第89行,在check_install_conflicts中 状态= create_package_set_from_installed()文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_internal/operations/check.py”, 第39行,位于create_package_set_from_installed中 retval [name] = PackageDetails(dist.version,dist.requires())文件 “ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/init.py”, 第2613行,在require中 dm = self._dep_map文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/init.py”, _dep_map中的第2864行 self。 dep_map = self._compute_dependencies()文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init.py ”, 第2874行,在_compute_dependencies中 reqs.extend(parse_requirements(req))文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/init.py ”, 第2935行,在parse_requirements中 产量要求(行)文件“ /home/.../miniconda3/envs/py3/lib/python3.6/site-packages/pip/_vendor/pkg_resources/init.py”, 第2944行,在 init 中 引发RequirementParseError(str(e))pip._vendor.pkg_resources.RequirementParseError:无效的需求, 在“';额外'”处解析错误,但是您使用的是pip版本18.0 版本18.1可用。您应该考虑通过“点子”进行升级 安装--upgrade pip'命令。
我尝试了conda install pip
并没有帮助。当我尝试conda remove pip
时,它想删除所有相关的软件包,这并不是我真正想要的。知道如何在不破坏环境的情况下进行修复吗?
答案 0 :(得分:0)
此特定问题是由testpath
引起的。我使用pip remove testpath
删除了该软件包,然后可以更新pip而不会出错。不幸的是,错误消息并没有指向我那里。我在GitHub问题页面上找到了该解决方案。