python -m venv生成的venv的pip有点问题,ImportError: cannot import name 'main'

在使用python3的venv时遇到一个问题,激活虚拟环境后,运行pip list等命令出现ImportError。经过检查发现是venv内的pip配置问题。通过对比系统python的pip代码,手动修改了venv中的pip/_main_.py,移除不正确的import语句,成功解决了问题。
摘要由CSDN通过智能技术生成
Traceback (most recent call last):
  File "C:\Python36-32\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Python36-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "D:\venvtest\Scripts\pip.exe\__main__.py", line 5, in <module>
ImportError: cannot import name 'main'

 

我用的是python3

我创建了一个venv,结果激活之后,连基本的pip list都报错

而不再虚拟环境中的话,pip list等命令执行是正常的

虚拟环境里的某些配置不对吗,需要手动修改,我去……

查看了下系统python下的代码对比了一下

把venv里面的pip/_main_.py 模仿系统的pip/_main_.py代码修改才好

去掉import

改成

from pip import main as _main

if __name__ == '__main__':
    sys.exit(_main())

解决问题了

venv下的显示

\venv\Scripts>pip list
Package    Version
---------- ------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值