pip相关问题解决(2)-修改源码

先抛出Python错误: AttributeError: module 'pip' has no attribute 'main'

        我一开始是在cmd命令行模式运行的pip install X包,没有问题,但是这样是把X包下载配置到我电脑原有的python环境中,我目前比较习惯用Anaconda里的jupyter编程,而Anaconda的python环境是另一个环境,于是我就到Anaconda prompt中输入pip install X包,但是就开始报错了……

通过网上查阅说是版本不匹配,pip10.0以后的版本没有main了,要么降低版本要么修改源码,我觉得早晚都要升级还不如修改源码。

D:\python\Third-party-codebase\Scripts\pip-script.py", line 5, in <module> sys.exit(pip.main())

于是我按照报错信息的路径找到了这个文件

#这是原代码
 if __name__ == '__main__':
    import sys
    import pip

    sys.exit(pip.main())

#这是修改后的代码
from pip import __main__
if __name__ == '__main__':
    import sys
    import pip

    sys.exit(__main__._main())

然后再到Anaconda prompt中输入pip install X包

就成功了!

另外的方法:

1.降低版本代码:Python -m   pip install --user --upgrade pip==9.0

2.是修改packaging_tool.py里的源码,这好像是发生在pycharm的Bug。网上有很多教程这里就不展开了。

感悟:加上上次tensorboard修改开源包的源码,开源包的代码并不是万无一失的,因为各个开源项目的升级换代很快,就有时候会出现代码不匹配的问题,这个时候不要怕,借助报错信息和官方文档和手册和互联网,可以适当的小小修改一个源码,使这个包可以契合现在的项目。

题外话:要记得pip是在terminal中使用,不是在python交互框。

发布了43 篇原创文章 · 获赞 111 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Amigo_1997/article/details/88420328
今日推荐