Pipenv出现TypeError、ResourceWarning、ImportError异常的处理

10月16日更新

Pipenv 10.13 据说已经修复所有相关问题,可以尝试更新:

$ python3 -m pip install --upgrade pip 
$ python3 -m pip install --upgrade pipenv

Pipenv 2018.7.1

Pipenv 2018.7.1版本和最新版本的pip不兼容,根据不同的命令和环境,会出现下面的异常:

  • TypeError: ‘module’ object is not callable (pipenv install)
  • ResourceWarning: Implicitly cleaning up … (pipenv install)
  • ImportError: cannot import name ‘get_installed_distributions’ (pipenv graph)

目前可以临时通过降级pip来解决:

$ python3 -m pip install pip==10.0.1

如果你使用Python2,则使用下面的命令:

$ python -m pip install pip==10.0.1

相关issue见#2924#2925#2944

Pipenv 2018.10.9

如果使用的是最新的2018.10.9版本,那么在Python 2.7下会出现下列异常:

  • ImportError: No module named weakref
  • ImportError: No module named shutil_get_terminal_size

可以临时通过手动安装这两个库来解决:

 $ pip install backports.weakref backports.shutil_get_terminal_size

Pipenv 修复版本发布后

等到Pipenv发布新版本修复了这些问题后,可以通过下面的命令升级pipenv和pip:

$ python3 -m pip install --upgrade pip
$ python3 -m pip install --upgrade pipenv

如果你在阅读《Flask Web开发实战》时还遇到了其他问题,可以先到FAQ中查看,没有解决可以在helloflask仓库创建issue。

(感谢 @刘呈祥 同学的提醒。)

    原文作者:李辉
    原文地址: https://zhuanlan.zhihu.com/p/46290463
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞