您当前的位置: 首页 > 

AttributeError: 'module' object has no attribute 'main'

彭世瑜 发布时间:2018-04-25 10:11:01 ,浏览量:2

pycharm 安装 flask 时候报错

pycharm版本:2017.2.3
python版本:2.7
pip版本:10.0.1
报错

这里写图片描述

Traceback (most recent call last):
  File "/Applications/PyCharm.app/Contents/helpers/packaging_tool.py", line 192, in main
    retcode = do_install(pkgs)
  File "/Applications/PyCharm.app/Contents/helpers/packaging_tool.py", line 109, in do_install
    return pip.main(['install'] + pkgs)
AttributeError: 'module' object has no attribute 'main'
原因

新版pip中的main函数已经发生了变化,是pycharm的原因

参考: PyCharm 2017.3 在pip10.0.0版本中报错(module ‘pip’ has no attribute ‘main’)

解决

方式一

通过 pip 命令手动安装

方式二 根据报错提示中的路径

    "/Applications/PyCharm.app/Contents/helpers/packaging_tool.py"

打开文件,如果在mac中找不到文件,可以使用打开

$ vim "/Applications/PyCharm.app/Contents/helpers/packaging_tool.py"

打开后找到如下代码

def do_install(pkgs):
    try:
        import pip
    except ImportError:
        error_no_pip()
    return pip.main(['install'] + pkgs)


def do_uninstall(pkgs):
    try:
        import pip
    except ImportError:
        error_no_pip()
    return pip.main(['uninstall', '-y'] + pkgs)

先注释,添加如下代码:

def do_install(pkgs):
    try:
        try:
            from pip._internal import main
        except Exception:
            from pip import main
    except ImportError:
        error_no_pip()
    return main(['install'] + pkgs)


def do_uninstall(pkgs):
    try:
        try:
            from pip._internal import main
        except Exception:
            from pip import main
    except ImportError:
        error_no_pip()
    return main(['uninstall', '-y'] + pkgs)

问题成功解决

关注
打赏
1688896170
查看更多评论

彭世瑜

暂无认证

  • 2浏览

    0关注

    2727博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0507s