🍱

[Python]conda仮想環境が独立していることの検証

2021/01/19に公開

やりたいこと

  • conda仮想環境がそれぞれ独立した環境であることを確認したい。
  • 異なる仮想環境それぞれでJupyterNotebookを起動し、使えるライブラリに差があることを確認したい。

背景

conda仮想環境が異なれば、それぞれの環境で利用できるライブラリは異なるので、
ある仮想環境でインストールしたライブラリは、他の仮想環境では使えないはず。
理屈では分かるが、本当にそうなっているかを自分で動かして確かめたい。

環境

  • Windows10+Anaconda

前提

  • Windows10 に Anaconda がインストール済みであること。
  • condaコマンドが実行できること。

Windows10にAnacondaをインストールする手順
https://zenn.dev/yamatok/articles/f1ded8dd310653

conda仮想環境作成

2つの仮想環境をクリエイトする。

  • yamato1

  • yamato2

conda create -n yamato1
conda create -n yamato2

作成されたことを確認する。

conda info -e

Jupyterインストール

各環境にJupyterをインストールする。

yamato1にインストールする。

conda activate yamato1
conda install jupyter

yamato2にインストールする。

conda activate yamato2
conda install jupyter

pandasインストール

yamato1 には pandas をインストールするが、yamato2 にはしない。
これで、ライブラリのインストール状況に差が出る。

yamato1にのみインストールする。

conda activate yamato1
conda install pandas

ライブラリ確認

 conda list

で各環境のライブラリのインストール状況を確認できる。

yamato1yamato2 を比較すると、pandas は yamato1 にのみインストールされていることが確認できる。

Jupyter起動

両方の環境でJupyterを起動する。

jupyter notebook

同時に起動すると、各環境で異なるポート番号が割り当てられる。

Jupyter画面表示

pandasはyamato1にはインストール済みだが、yamato2には入っていない。
よって、yamato1ではインポートできるが、yamato2ではインポートできないはず。
それを確認する。

yamato1

http://localhost:8888/

import pandas as pd

エラーが起きないので、正常にインポートできている。

yamato2

http://localhost:8889/

import pandas as pd

エラーが発生している。pandasをインストールしていないからである。

以上の通り
「異なるconda仮想環境においては、インストールされているライブラリも個別に管理されている」
ことが確認できた。

Discussion