My days of...

生活のことなど、がんばろう

混ぜると危険だそうです。Anacondaとpip

混ぜると危険、なんですね

onoz000.hatenablog.com

「pipを使ってインストール」をするとcondaとpipのパッケージが混ざって厄介なことになる可能性がある。condaから入れたパッケージはpipからも認識されるものの、

  • 依存関係のバージョン違い
  • condaとpipのパッケージ名の違い(例: pyqt (conda) vs. PyQt5 (pip))

等から予期せずcondaのパッケージが上書きされてしまうことがある*1。その結果、パッケージ1つのインストールでAnaconda環境が壊れてしまい、Anacondaそのものを再インストールしない限り修復困難になってしまうことがある。また、condaがハードリンクを用いてパッケージを共有している関係から一つの環境でやらかしてしまったが最後、他の仮想環境まで破壊されることもある。

 なるほど。気をつけよう・・・ってもう混ぜちゃったような気がする

Anacondaとpipを利用する際に気をつける点として

  1. anaconda search X でXを提供しているチャネルがないか探す。あればconda install -c channel X等の方法でインストールする(この場合もチャネルの優先順位など、様々な注意が必要。詳しくは公式ドキュメント参照)。
  2. pipから入れたい場合、まずPyPIのサイトから該当するパッケージを探し、依存関係を調べておく。依存するパッケージのうち、condaからインストール可能なものは予めインストールしておく。
  3. 依存関係を満たしたらpip install --no-deps XでXをインストールし、動作確認する。

 または

  • pipからしか入れられないパッケージを入れたい場合、新しいcondaの環境を作る(conda create -n env python)。その環境内ではconda installは一切用いない。
  • Anacondaを使うのをやめるPython公式サイトのPythonを使い、パッケージはpipで導入する。仮想環境についてはvenvvirtualenvを用いる。

 だそうです。

 

 

独学プログラマー Python言語の基本から仕事のやり方まで

独学プログラマー Python言語の基本から仕事のやり方まで

 
詳細! Python 3 入門ノート

詳細! Python 3 入門ノート

 
アナコンダ Blu-ray