eclipse + PyDevでPythonする。

Pythonの開発環境は、eclipse + PyDevがなかなか強力。
とりあえず、この投稿ではeclipseとPyDevの導入まで書いてみます。

この組み合わせで出来ること。
・コード補完
・コードドキュメントの表示
・インタラクティブコンソールでデバッグ
・実行時に変数の値を更新
・条件付きブレークポイント
・例外ブレークポイント
・ブレークポイントでストップ中に、コンテキスト切り替え
・ソースコード自動フォーマット
・コードカバレッジ計測
・コード評価(PyLint)
・プロファイリング（cProfile）
・Gitでソースコード管理(Git)

eclipseの実行にはJavaが必要ですが、この投稿ではCentOSにデフォルトで入っているJavaの実行環境を使います。
Pythonも横着してCentOSにデフォルトで入っている実行環境を使います。

１．eclipseをインストール
eclipseのサイトからパッケージをダウンロードします。
http://eclipse.org/downloads/
Python用のパッケージは無いので、Java用をダウンロードします。（eclipseはJavaをベースに動いているため、これが最小パッケージのようなものです）
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/a0502e97-c401-15c6-42e2-7536f4ce856d.png)

最寄りのサーバーからダウンロードします。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/d0f905a4-4c1e-2ee1-8698-e2bab49e7458.png)

とりあえず、 /usr/localに展開します。
tar zxvf /home/\<user名>/ダウンロード/eclipse-java-luna-SR2-linux-gtk-x86_64.tar.gz -C /usr/local
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/b5be87f4-303d-0498-048f-04cbd5653485.png)
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/bcf1f545-5687-b53e-6436-997f04db6096.png)

これで、/usr/local/eclipseを実行することでeclipseを起動できます。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/3c148d57-30a5-7e59-12a6-43292ff899cb.png)

初回起動時に、プロジェクトの保存先を聞いてきます。
デフォルトで問題ないと思います。毎回起動時に場所を聞いてくるのが煩わしいので「Use this as the default and do not ask again」をチェックしてOKボタンを押してください。
（ワークスペースの場所は後からでも変更できます）
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/5b63d4cc-c75b-2033-b339-33cc8c294f54.png)
Welcomeのタブは閉じてください。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/afd71e27-0ef6-ac19-8455-341bfe185c08.png)

２．eclipseにPyDevをインストールする。
メニューの「Help」→「install New Software ...」を選択する。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/285a0ee4-153c-ce43-b736-1c0d7cb2b22c.png)

「Work with:」に「http://pydev.org/updates」を入力してエンターキーを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/24fbc330-ae17-5ad1-4be7-37aa6678d350.png)

PyDevを選択して「Next」ボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/fa814205-813e-4e95-ffcd-2c9fd2de0bc7.png)

そのまま「Next」ボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/07154328-9d84-7899-33e9-8a2ecf56276c.png)

ライセンス内容が表示されるため、同意「I accept the terms of the license agreements」を選択して「Finish」ボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/468d0ec1-18a4-dc51-b253-7d0a4955e7d4.png)

途中で証明書の確認が表示されるので、チェックを入れてOKボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/d0ccf28b-e55b-1d96-cae0-6962b5109437.png)

eclipseを再起動しても良いか聞いてくるので、「Yes」ボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/08a3fe2e-571c-d65b-3043-afb8d82e51bf.png)

３．PyDevの設定を行います。
まず、Javaのパースペクティブ（パースペクティブは直訳すると「視点」ですが、作業スペースのような意味合いです）を閉じます。
右上の「Java」を右クリックして「Close」を選択します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/816f98b5-9d1b-50b6-ea11-eb1347f4e356.png)

右上の「+」のようなアイコンをクリックしてパースペクティブを追加します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/f62594ff-38cb-1e68-7642-6f89b80c2d25.png)
PyDevを選択してOKを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/2d383b17-1863-b4ea-8ad7-473dff9e1168.png)
PyDevのパースペクティブが開きました。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/b4afee99-e32e-3f0a-dcbf-f17f95929a9d.png)

次にメニュー「Windows」→「Preferences」を選択して設定ダイアログを表示します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/e54adca4-b5ef-4dc5-ba05-7dfdc8fc33d1.png)

「PyDev」→「Interpreters」→「Python Interpreter」を選択します。
右上の「New...」ボタンをクリックしてPythonのインタープリタ（実行ファイル）を登録します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/1b3ad9a7-637e-1e61-1264-f041f40a7d1e.png)

「Interpreter Name:」には任意の名前（ここではPython27と入力）、「Interpreter Executable:」には、CentOSにデフォルトで入っているPythonの実行ファイルパス「/usr/bin/python」を入力してOKボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/356c639d-210f-69dd-f2d8-95de9accf858.png)

自動的にPythonpathを検出してくれるのでOKボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/5e8f9221-d804-5b11-5c8c-221959116541.png)

OKボタンを押して設定画面を閉じます。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/792f9cf8-bf64-dfb5-cc6c-b8b4a51ce441.png)

これで、基本的な設定は完了です。

３．Pythonのプロジェクトを作って、コードを実行する。
メニュー「File」→「New」→「PyDev Project」を選択する。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/0354d9ee-346f-01b8-f3a3-e122bbc3161b.png)

「Project name:」に任意のプロジェクト名を入力する。
「Grammar Version」は使用するPythonのバージョンを選択する。ここでは、CentOS7にデフォルトで入っているPythonのバージョンを選択しています。このバージョンで、開発中の構文チェックなどが行われます。
「Interpreter」は自分で登録したPythonの実行モジュールを選択します。Pythonのインタープリタは複数登録できるため、後々の事を考えてDefaultのままにせず、きちんと選択しておきましょう。
（例えばPython2.7とPython3.4を登録して、プロジェクトによって使い分ける事もできます）
「Finish」ボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/ff9cf116-34a6-bd23-ad01-deba574dbd16.png)

次に、モジュールを作成します。
メニュー「File」→「New」→「PyDev Module」を選択する。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/824a023b-a92e-4531-df90-f96007320656.png)

「Package」に任意のパッケージ名、「Name」に任意のモジュール名を入力して「Finish」ボタンを押します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/154ff90e-ac4b-8bd3-a000-835fff12814a.png)

初回のモジュール作成時に、以下のような確認画面が表示されます。そのままOKボタンを押して問題ありません。
・実行前にビルド処理を待つ：待たない
・実行前に必要ならビルドする：ビルドしない
・PyDevエディタが開かれる度に再チェックする。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/a276f374-170b-a1bf-188e-b62aa2f2c4fc.png)

PyDevに登録されているテンプレートを選択できます。ここでは「Module Main」を選択してOKボタンを押します。
（テンプレートは、自分で編集したり新たに追加する事もできます。テンプレートを適用しない場合は「Empty」を選択します）
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/773d2071-ac45-3f74-7cfc-07aff9cd924f.png)

初回のモジュール作成時には、こんな画面も表示されているはずです。
これは、現在PyDevをメンテナンスしているFabioさんからのメッセージです。読んだ「Read it」ボタンを押して閉じてください。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/236f400a-876e-c46c-2fbc-d25147da25ad.png)

「pass」の部分を「print 'Hello egg !'」に書き換えて保存してください。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/7975e66e-6ab7-4a57-bf62-c1fd54de47e8.png)

メニュー「Run」→「Run As」→「Python Run」を選択してください。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/2b75600f-9d96-58a2-d518-cf0a9dd282d7.png)

下のコンソールに、「Hello egg !」と表示されたはずです。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/76564/5ab11a85-d4d2-533b-cb26-aedebdf6e6f1.png)

お疲れ様でした。