2019/09/07(土) [n年前の日記]
#2 [python][linux] venv や pipenv を使ってみたり
Pythonの仮想環境を構築できるらしい、venv や pipenv を触ってみたり。
◎ 状況。 :
Ubuntu 18.04上で sudo apt install python3 をすると、python 3.6 がインストールされる。
その状態で pyxel をインストールすると…。
しかし、pyxel の現行版は 1.2.6 らしい。pyxel最新版を使ってみたいが、Python 3.7 を要求されてしまう。
Ubuntu 18.04 は、sudo apt install python3.7 とすることで python3.7 をインストールすることもできるし、python3.7 --version で Python 3.7 が動くことも確認できる。しかし、この状況で pyxel をインストールする方法が分からない。
ググってみたら、pipenv なるものを使うと環境を切り替えて使うことができるらしいと知った。
更にググっていたら、virtualenv なるものを使っても仮想環境が構築できるらしい。
_Ubuntu 18.04 LTSでのVirtualenvを用いたPython環境構築方法 - Qiita
と思ったら、venv なるツールが virtualenv を前身として作られていたらしい。
_Ubuntu Linux 18.04 LTSで、Pythonの仮想環境(venv)を使用する - CLOVER
_pyenv、pyenv-virtualenv、venv、Anaconda、Pipenv。私はPipenvを使う。 - Qiita
_Pythonのパッケージ周りのベストプラクティスを理解する - エムスリーテックブログ
結局どれを使えばいいのやら…。よく分からないが、venv を使ってみることにした。環境は Ubuntu 18.04 LTS。
その状態で pyxel をインストールすると…。
sudo -H pip3 install pyxelpyxel 1.0.2 がインストールされる。
しかし、pyxel の現行版は 1.2.6 らしい。pyxel最新版を使ってみたいが、Python 3.7 を要求されてしまう。
Ubuntu 18.04 は、sudo apt install python3.7 とすることで python3.7 をインストールすることもできるし、python3.7 --version で Python 3.7 が動くことも確認できる。しかし、この状況で pyxel をインストールする方法が分からない。
ググってみたら、pipenv なるものを使うと環境を切り替えて使うことができるらしいと知った。
sudo -H pip3 install pipenv
更にググっていたら、virtualenv なるものを使っても仮想環境が構築できるらしい。
sudo apt install virtualenv virtualenvwrapper
_Ubuntu 18.04 LTSでのVirtualenvを用いたPython環境構築方法 - Qiita
と思ったら、venv なるツールが virtualenv を前身として作られていたらしい。
_Ubuntu Linux 18.04 LTSで、Pythonの仮想環境(venv)を使用する - CLOVER
_pyenv、pyenv-virtualenv、venv、Anaconda、Pipenv。私はPipenvを使う。 - Qiita
_Pythonのパッケージ周りのベストプラクティスを理解する - エムスリーテックブログ
結局どれを使えばいいのやら…。よく分からないが、venv を使ってみることにした。環境は Ubuntu 18.04 LTS。
◎ venvを使う。 :
インストールしてみる。
適当なフォルダを作成して、仮想環境を作成。
仮想環境を有効にする。
仮想環境から抜ける。
仮想環境を有効にして pyenv をインストールしてみる。
pyxel のサンプルをインストール。
sudo apt install python3-venv python3.7-venv
適当なフォルダを作成して、仮想環境を作成。
cd ~/prg mkdir py37 cd py37 python3.7 -m venv py37
仮想環境を有効にする。
$ source py37/bin/activate (py37) $ python3 --version Python 3.7.3python3 を実行しているのに、Python 3.6 ではなく 3.7 が実行されていることが分かる。
仮想環境から抜ける。
(py37) $ deactivate $ python3 --version Python 3.6.8python3 が 3.6.8 に戻った。
仮想環境を有効にして pyenv をインストールしてみる。
$ source py37/bin/activate (py37) $ pip3 install pyxel何かエラーが出たけれど、pyxel 1.2.6 がインストールされたっぽい。
pyxel のサンプルをインストール。
(py37) $ mkdir pyxel (py37) $ cd pyxel (py37) $ install_pyxel_examplespyxel_examples というディレクトリが作られて、その中にサンプルファイルがいくつか入った。
(py37) $ cd pyxel_examples (py37) $ python3 01_hello_pyxel.py実行できた。
◎ pipenvを使う。 :
pipenv のほうが venv よりスゴイという話を見かけたので触ってみる。何がスゴイのかはよく分からないけれど。
pipenv をインストール。
何か適当なフォルダを作成して、中に入る。
利用する Python のバージョンを指定。
仮想環境の Python を使うように切り換え
pyxelをインストール。かつ、パッケージのインストール状態を確認。
pyxel をアンインストールしてみる。
仮想環境を抜ける。
仮想環境を削除。
pipenv をインストール。
sudo -H pip3 install pipenv
何か適当なフォルダを作成して、中に入る。
$ mkdir pipenv $ cd pipenv
利用する Python のバージョンを指定。
$ pipenv --python 3.7.3何かが色々と生成された。
仮想環境の Python を使うように切り換え
$ pipenv shell (pipenv) $ python3 --version Python 3.7.3python 3.7.3 が使われる状態になった。
pyxelをインストール。かつ、パッケージのインストール状態を確認。
(pipenv) $ pipenv install pyxel (pipenv) $ pipenv graph pyxel==1.2.6 - pyinstaller [required: Any, installed: 3.5] - altgraph [required: Any, installed: 0.16.1] - setuptools [required: Any, installed: 41.2.0]pyxel 1.2.6 がインストールされていることが分かる。
pyxel をアンインストールしてみる。
(pipenv) $ pipenv uninstall pyxel Uninstalling pyxel… Uninstalling pyxel-1.2.6: Successfully uninstalled pyxel-1.2.6 Removing pyxel from Pipfile… Locking [dev-packages] dependencies… Locking [packages] dependencies… Updated Pipfile.lock (a65489)! (pipenv) $ pipenv graph PyInstaller==3.5 - altgraph [required: Any, installed: 0.16.1] - setuptools [required: Any, installed: 41.2.0]pyxel がアンインストールされた。
仮想環境を抜ける。
(pipenv) $ exit
仮想環境を削除。
$ pipenv --rm
[ ツッコむ ]
以上です。