【コンダ】

conda とは?

💡 Pythonの環境をまるごとパッケージにして持ち運べる引っ越し業者
📌 このページのポイント
conda vs pip+venv の比較 conda 仮想環境の作成・管理 Pythonパッケージの管理 C/C++/Rライブラリも管理 1つのツールで全部できる pip + venv venv 仮想環境のみ pip Pythonパッケージのみ C/C++は別途手動 ツールの組み合わせが必要 Anaconda(フルセット)/ Miniconda(軽量) Python標準ライブラリに同梱
condaとpip+venvの比較イメージ
ひよこ ひよこ

condaとpipって何が違うの?

ペンギン先生 ペンギン先生

pipは「Pythonパッケージだけ」をインストールするツールだけど、condaは「Python自体のバージョン」や「C言語で書かれたライブラリ」まで含めて管理できるんだ。さらに仮想環境の作成もconda一つでできるから、venvとpipを両方使う代わりにcondaだけで済むんだよ

ひよこ ひよこ

AnacondaとMinicondaはどう違うの?

ペンギン先生 ペンギン先生

Anacondaはcondaに加えて数百のデータサイエンス用パッケージがプリインストールされた「フルセット版」。Minicondaはcondaの最小構成で、必要なパッケージだけを自分で入れる「軽量版」だよ。ディスク容量を節約したい人はMinicondaがおすすめだね

ひよこ ひよこ

仮想環境ってどうやって作るの?

ペンギン先生 ペンギン先生

conda create -n myenv python=3.11 のように名前とPythonバージョンを指定するだけだよ。conda activate myenv で切り替えて、conda install numpy pandas で好きなパッケージを入れる。environment.ymlに書き出せば、他の人が同じ環境を再現できるんだ

ひよこ ひよこ

pipと混ぜて使っても大丈夫なの?

ペンギン先生 ペンギン先生

基本はcondaで入るものはcondaで入れて、conda にないものだけpipを使う、という順序が推奨だよ。逆にするとパッケージの依存関係が壊れることがあるんだ。conda環境の中でpipを使う場合は、conda install pip で環境内のpipを使うようにするのがコツだね

ひよこ ひよこ

conda-forgeって何なの?

ペンギン先生 ペンギン先生

コミュニティが運営するパッケージリポジトリだよ。公式のdefaultsチャンネルにないパッケージでも、conda-forgeにはあることが多いんだ。conda config --add channels conda-forge で追加しておくと便利だよ。最近はconda自体をRustで書き直したmambaという高速版もあって、大量のパッケージ解決が爆速になるよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「conda」って出てきたら「Pythonの環境とパッケージをまとめて管理するツール」と思えればだいたいOK!
📖 おまけ:英語の意味
「conda」 = Anacondaの短縮形
💬 Anaconda(アナコンダ、大蛇)ディストリビューションに由来する名前だよ。Pythonが蛇の名前だから、もっと大きな蛇で包み込む、というイメージだね
← 用語集にもどる