Address
304 North Cardinal St.
Dorchester Center, MA 02124

Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM

PythonのAnacondaとPip

PythonのAnaconda環境において、Pipでインストールしたモジュール・ライブラリがインポートできない場合の解決方法

PIpでインストールしたPythonのモジュールやライブラリが、Anacondaでインポートできない場合の解決方法

以前、Python開発環境においてAnacondaを使う場合に、Pythonのモジュールやライブラリは基本的にcondaコマンドを使ってインストールしたほうが良いと書きました。下の記事がそれです。

しかし、Anacondaの公式サイトで配信されていないモジュールやライブラリについては、pipコマンドでインストールしなければなりません。

そして、それらインストールしたモジュールなどをインポートして使うわけですが、Anaconda環境を使っている場合にpipコマンドでインストールしたモジュールなどがインポートできない場面に出くわすことがあります。

そんなときの簡単な解決法を1つご紹介しておきます。

ですが、今回の解決法はあまりよろしくない手段だと思います。頻繁に使うのはおすすめしません。依存関係などから不具合はありえます。

PipでインストールしたモジュールなどがAnacondaで使えない原因:保存先の違い

あくまでAnacondaを使っている場合での話ですが、通常Anaconda環境下では、condaコマンドでインストールしたモジュールやライブラリは、Anacondaがインストトールされたフォルダの中にあるLibという名前のフォルダ(人によってはlibと小文字かもしれません)に入っています。

そしてAnacondaは基本的に標準ではそのLibフォルダ内のファイルをインポートします。

Anaconda環境で、OSのどこからファイルをインポートしているのかを確かめるためには、 以下のコードを書いて実行しましょう。

import os
os.sys.path

Anaconda3をインストールして使っているならば、

〜/anaconda3/Lib/〜

という情報を含んだパスがいろいろ表示されると思います。

一方で、Pipコマンドでインストールしたライブラリやモジュールは、Pipがインストールされているフォルダの中にあるフォルダに入ります。

それゆえ、Pipをインストールしたフォルダが、Anacondaフォルダ内にあるLibフォルダの外にある場合は、Pipを使ってインストールしたモジュールやライブラリをインポートできないことになります。

解決方法

解決方法は簡単です。

PipフォルダがAnacondaフォルダの外部にある場合には、Pipフォルダ内にインストールされたモジュールやライブラリを、Anacondaフォルダ内の上述Libフォルダ内にコピーすればいいだけです。

AnacondaにおいてPipでインストールしたモジュールを使う方法

たとえば、Pipでインストールした結果、「web-driver」というフォルダができていたとします。その場合は、そのフォルダごとコピーしてLibフォルダ内へ移動(コピペ)させればいいです。

これにより、インポートして使うことが可能となります。

しかし上述のように今回のこの方法は例外的な手段だと思ってください。

愛を分かち合いましょう