pipとvirtualenvがすごい便利だっと今日気付いた。

追記 2017/02/05

Notice: この記事は古いため、次の記事を参考にしてください

以下、記事の本文

pip

今までeasy_installで満足してたんだけどpip便利。

気に入った点は、

  • uninstallがある。easy_install使ってる時はsite-packagesをみて消してた...。
  • freezeでインストール済みのパッケージを確認できる。
    • freezeはそのための機能じゃないけど。
    • もちろんパッケージ一覧ファイルつくって持ち運ぶことも考えてるけど、そこまでは活用しきれてない...。
  • bundleでzip形式に固められる(らしい)。
    • 要調査。
pipのインストール

easy_installが入ってるならそれが一番楽。

easy_install pip
pipの実行例

Tracをインストールする例。

pip install trac

削除したければ、

pip uninstall trac

現在の環境のパッケージを確認するには、

pip freeze

現在の環境のパッケージをファイルに書き込み、それを他の環境でパッケージをインストールする例。

# 現在の環境
pip freeze > mypackage.txt
# 他の環境
pip install -r mypackage.txt

bundle化は調査中。

virtualenv

pipと組み合わせるととてつもなく便利になる!

ハマリどころは、

  • LinuxMacだとactivateの実行がsource activate。
  • windowsだとdeactivate.batがファイルとしてあるのに、LinuxMacだとdeactiveがコマンドの一種として登録されてる。
virtualenvの実行例

適当にsandboxって名前で作る(えっ?)

rokujyouhitomajp$ virtualenv sandbox
New python executable in sandbox/bin/python
Installing setuptools............done.

sandboxを有効にする。
windowsだと、

Script\activate.bat

Macだと、

source bin\activate

有効にすると、(sandbox)って頭につく。あとは好きなようにpipなりeasy_installなりでパッケージをインストールする。

sandboxを無効にする。
windowsだと、

Script\deactivate.bat

を実行。

Macだとコマンドとして登録されてるので、

deactivate

を実行。

感想

これで心置きなく環境構築できる。

余談

tracのインストールをしてて気づいたけど、tracdというコマンド使えば、Apacheいらずなのな。驚いた。