いろいろ備忘録日記

主に .NET とか Java とか Python絡みのメモを公開しています。

Pythonメモ-25 (pip実行するとエラーになる)(ModuleNotFoundError: No module named 'pip._vendor.requests.adapters', conda, anaconda)

概要

pythonの環境としてAnaconda使っているのですが、最近アップデートすると

pipコマンドが実行できなくなりました。環境は Windows です。

以下のエラーが発生するようになりました。

$ pip
Traceback (most recent call last):
  File "C:\Anaconda3\Scripts\pip-script.py", line 6, in <module>
    from pip import main
  File "C:\Anaconda3\lib\site-packages\pip\__init__.py", line 28, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "C:\Anaconda3\lib\site-packages\pip\vcs\mercurial.py", line 9, in <module>
    from pip.download import path_to_url
  File "C:\Anaconda3\lib\site-packages\pip\download.py", line 41, in <module>
    from pip._vendor.requests.adapters import BaseAdapter, HTTPAdapter
ModuleNotFoundError: No module named 'pip._vendor.requests.adapters'

conda list したらこんな感じ。

$ conda list

# packages in environment at C:\Anaconda3:
#
...
anaconda                  5.0.0            py36hea9b2fc_0
...
conda                     4.3.30           py36h7e176b0_0
...
python                    3.6.2               h6679aeb_11
...

$ conda list pip
# packages in environment at C:\Anaconda3:
#
pip                       9.0.1            py36hadba87b_3
pip-review                0.5.3                     <pip>
pip-tools                 1.9.0                     <pip>

以下、同じ現象発生した人の参考になれば。

解決方法

どうもAnacondaの問題みたい。以下の情報が参考になりました。

github.com

上記情報から以下を実行。(Cmder使ってます。)

$ cd /Anaconda3/Lib/site-packages
$ rm -rf pip
$ conda install pip -f

これで、pipを強制再インストールしたら、エラー出なくなりました。

$ pip

Usage:
  pip <command> [options]

Commands:
  install                     Install packages.
  download                    Download packages.
  uninstall                   Uninstall packages.
  freeze                      Output installed packages in requirements format.
  list                        List installed packages.
  show                        Show information about installed packages.
  check                       Verify installed packages have compatible dependencies.
...

過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。