Pythonで仮想環境venvを使ってみるという話

Pythonを仮想環境で使う場合、いくつか方法があります。それぞれの方法の違いは正直よく分からないので、今回はPythonの公式のドキュメントに載っている方法で試した時の話を書いておきます。
環境はUbuntu 16.04 LTSです。

Pythonドキュメント
The Python Tutorial
  12. Virtual Environments and Packages — Python 3.7.0 documentation
The Python Standard Library
  29.3. venv — Creation of virtual environments — Python 3.7.0 documentation

まずドキュメントに書かれている方法で仮想環境構築をしようとしましたが、以下のコマンドではパッケージが足りてないというエラーが出ます。
$ python3 -m venv virtual01

ここではpython3-venvというパッケージが足りていないので、aptでインストールします。Ubuntuのリポジトリには「python3-venv」と「python3.5-venv」の2つがありました。違いがよく分からなかったのですが、バージョン的にpython3.5-venvの方をインストールすることにしました。
$ sudo apt install python3.5-venv


必要なパッケージもインストールしたので再び仮想環境構築。 
$ python3 -m venv virtual01

今度は仮想環境構築に成功したので、次に以下のコマンドで仮想環境のPythonを有効にして使うようにしました。
$ source virtual01/bin/activate

(shellにbashではなくfishやcshを使っている場合はコマンドがこれとはやや異なります)
これによりbashのプロンプト表示が変化します。そして $ python

とするといま作った仮想環境のPythonが実行されます。 Ubuntu16.04では「python3」とコマンドを打たないと3系のpythonが実行されませんが、仮想環境下では「python」コマンドだけで作った環境のpythonが実行されます。

仮想環境を終了して抜け出すには
$ deactivate

と実行します。

この段階では仮想環境には何かとモジュールがインストールされていないので、必要なものはpipでインストールしていきます。

参考サイト

Pythonの周辺環境について整理しながらUbuntuに仮想環境を整える(pipとかvirtualenvとかvenvとか) - 可変ブログ




コメント

スポンサーリンク


このブログの人気の投稿

Ubuntu Softwareが起動しないのでいろいろと調べてみる(Ubuntu 20.04.1 LTS)

gnuplotでプロットなどの色をcolornameの指定で変更する

gnuplot : グラフにグリッド線を描く方法(set grid)

gnuplot : プロット画像のサイズ指定について(set sizeとの違い)

Pythonのformat()を使って1桁の16進数でも2桁で出力する方法