YAMAGUCHI::weblog

海水パンツとゴーグルで、巨万の富を築きました。カリブの怪物、フリーアルバイター瞳です。

Pythonの環境設定でむかついてる人はとりあえずこれをコピペで実行してください

はじめに

こんにちは、Python界の情弱です。最近は、以前に比べてPythonを触る人が増えてきたような印象ですが、それでもやれeasy_installだ、やれvirtualenvだと言われても、どうやって設定したらよくわからない、という発言をちらほら見かけています。
でもぶっちゃけ超簡単なので、とりあえず初めてPythonの環境設定する人はこれをコピペで動かして下さい。

(2017.01.26追記)
注意:この記事はもう古いので、Python2をいまから使い始めるなんていう奇特な人以外は次の記事を読んで下さい。
ymotongpoo.hatenablog.com

要点

はまりどころは多分次のどれかだと思う

  1. Pythonのバージョンをどれ使っていいかわからない
  2. 「easy_installを使え」と言われるがeasy_installというパッケージが見つからない
  3. virtualenvの入れ方がよくわからない

回答は各々次の通り

  1. 今はPython 2.7の最新版を使うことを推奨*1
  2. easy_installなどというパッケージは存在しない。distributeというパッケージを入れるとeasy_installというコマンドが使えるようになる
  3. easy_installコマンドが使えるようになったらそれで入れるだけ

以下コピペ

Mac OS X

Mac OS Xの場合はPythonがデフォルトで入ってるので、もうそのままそれを使えばいいんじゃないですかね。

% curl -O http://python-distribute.org/distribute_setup.py
% python distribute_setup.py
% easy_install virtualenv

これでvirtualenvのセットアップ完了です。おしまい!

Linux

ディストリビューションによってはPythonが最初から入ってますが、virtualenvまで込みでOSのパッケージ管理ツールで入れたらいいと思います。たとえばこれはUbuntu 12.04 LTSの場合。

% sudo apt-get install python2.7 python2.7-dev python-virtualenv
Windows

俺、Windows持ってないからわからないけど、PythonMSIで2.7の最新版をインストールして、それ以降はMac OS Xと同様にdistributeとvirtualenvを入れたらいいと思います。

virtualenvが入ったら

virtualenv環境を作って有効化します

% python virtualenv.py --distribute ENV
% source ENV/bin/activate

これでvirtualenv環境が有効化されたので、あとは煮るなり焼くなり好きにしたらいいと思います。
そもそもなんでvirtualenvを使うのか、っていうのは、きっとRubyのrvm/rbenvとかPerlのperlbrewだとかを使ってる人は自明だと思いますので、そのへんの記事を参考にされたらと思います。virtualenvが何をしているかはこのエントリが大変良いと思います。

参考

あくまで当面はとりあえずで使いたいという人向けのエントリなので、Pythonでちゃんと開発するならそれなりの環境設定をされることをオススメします。たとえばデフォルトのUnicode内部表現とか、適当にやって痛い目見そうな人はそのへんきちんとされたほうがいいと思います。

ほかにもいくつかエントリがあるので好きなようにやれば良いと思います。おわり。

追伸

金輪際Python使うことないから、パッケージがシステムの環境にガンガン入っても別にどうでもいい、という場合にはvirtualenvなんか入れないで、easy_installだけ入れて、パッケージをインストールしまくっても問題ないと思います。おわり。

追伸2 (2012/10/19 10:30:00)

ブコメで「pip入れろ」みたいな記事見かけますが、virtualenv入れたらpip入るので、使うならそこで使えばいいですよ。それにpipもsetuptoolsモジュール叩くためにdistributeを呼ぶんで、結局システムに入れるパッケージ管理ツールはeasy_installのみでいいんじゃないすかね。下手にpipだけ入れるとdistutilsとかsetuptoolsのsetuptoolsを呼ぶんでやめたほうがいいです。おわり。

*1:Python3系は出ているが、現状Python2系がメインストリーム。ただ、多くの3rdパーティーパッケージはPython3系の対応をしているので、文法を知るレベルであれば最新バージョンのPython 3.3を入れた方がいいと思う。