LoginSignup
6
7

More than 5 years have passed since last update.

pyenv環境に入らないでpyenv依存モジュールを使ったscriptを実行する

Posted at

自分用のメモ

pythonにはvirtualenvとかを使って独立したpython環境(以下、pyenv環境)を作ることができる。
非常に便利だけどpyenv環境に依存したモジュールを使ったスクリプトはいちいちpyenv環境をアクティベーションしてからでないと使えない。
(実際は使えないことはないけどややめんどくさい)

これは非常に不便なんだけど、ぱっとすぐに情報が入ってこない。たくさんあるpyenv環境を管理する方法はたくさん情報が溢れてるけど。

いい方法がないものかと、Documentを覗いてみたら簡単に解決方法が見つかった。
https://virtualenv.readthedocs.org/en/latest/userguide.html#using-virtualenv-without-bin-python

つまりは、pythonモジュールの先頭に以下の二行を追加してねってだけらしい。

activate_this
activate_this = '/path/to/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

/tmp/pyenvってvirtualenv環境に入れたnumpyを上のようにして使いたいとすると

#!/usr/bin/env python

activate_this = '/tmp/pyenv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

import numpy as np

a = np.arange(10)

print(a)

【結論】
ちゃんとDocument読もうねって話なんだけど、Pythonの3rdParty系モジュールは日本語の情報少ないよね。
結構つらい

6
7
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7