日々適当

hibitekitou

Python、仮想環境の構築メモ

mac |2020-02-23

Python 3.4以降、仮想環境を作成するvenvってのが標準搭載されるようになったそうで、じゃぁそれを使いましょうとなります。

仮想環境を構築するコマンドは

python3 -m venv [仮想環境名]

ってことになります。これで現在のPythonのプロジェクトフォルダにvenvって仮想環境を作成するとvenvフォルダが作成され、その中でモジュールのインストールなどが行われていきます。例えばデスクトップにProjectフォルダがあったとして、その中でこのコマンドを実行すると

$ mkdir ~/Desktop/Project
$ cd ~/Desktop/Project/
$ python3 -m venv venv
$ ls
venv

ってな具合。こうして作成した環境だけど、これを有効化する必要があります。プロジェクトフォルダ内で

source venv/bin/activate

です。単にvenvフォルダができるだけでなく、有効化・無効化のための仕組みがフォルダ内に構築されていたわけです。これを有効化してたターミナルではプロンプト前に (venv) って表記が付きます。

(venv) MachineName user$

無効化する際は deactivate コマンドを走らせるだけです。プロンプト前に(venv)とついている状態ならそのまま実行できるわけっすね。

ということで簡単に仮想環境を構築する事ができました。

ところでこうして構築した環境をBlnederから利用できないのかなと思ったのだけど、とりあえずは、venv下のsite-packagesを sys.path.append() 使って追加すれば良さそうです。
もっとも、BlenderのPythonにモジュールを追加する場合、正攻法としては、Blender.app下のPython環境でまずpipを動くようにして、そのpipを使ってインストールするのだそうで。Python 3.4以降、pipをインストールするためのモジュールがPython標準で組み込まれているそうだから、BlenderのPythonの入ったパスで(2.82なら/Applications/Blender.app/Contents/Resources/2.82/python/bin/)で

./python3.7m -m ensurepip
./python3.7m -m pip install --upgrade pip

って実行するとpipが入って、パッケージマネージャが最新になります。そのpipを使ってインストールっすね。インストールされたモジュールを見る場合は ./python3.7m -m pip list で、2.82を入れたばかりの環境でこれを実行すると

Package   Version
----------   ---------
certifi   2019.6.16
chardet   3.0.4
idna   2.8
numpy   1.17.0
pip   20.0.2
requests   2.22.0
setuptools   40.8.0
urllib3   1.25.3

となりました。なるほど。

コメント ( 0 )|Trackback ( )
  ・