俺のアウトプット

調べたこと、試したことを書きます

AWS Cloud9でPython3の環境を構築する

EC2環境を作成した直後はPython2系を利用できます。
Python3系を利用するためにはプロジェクト設定を変更する必要があります。

EC2環境の構築は下記エントリを参照してください。

プロジェクト設定

Python用の設定項目を表示します。

  1. メニューバー右側の歯車アイコンを選択
  2. プロジェクト設定画面 [PROJECT] - [Python Support] を選択

f:id:kitsugi:20180925055741p:plain

Python Version

使用するPythonのバージョンを指定します。 Python3 に変更します。

注意点として、ここで設定したPythonのバージョンは、IDE上で実行したコード用(ランナー)であって、ターミナル上のPythonとは関係ありません。

ターミナル上のPythonは、エイリアス変更しない限り2.7系のままです。

$ python -V
Python 2.7.14

Enable Python code completion

ONの場合、Pythonコード補完を有効にします。
デフォルトではONです。

この項目は PYTHONPATH のパスを参照します。 コード補完が効いていない場合、パスが間違っている可能性があります。

デフォルト値

/usr/local/lib/python2.7/dist-packages:/usr/local/lib/python3.4/dist-packages:/usr/local/lib/python3.5/dist-packages

パスをコロン(:)で連結します。

デフォルトでは2.73.43.5を参照していますが、インストールされているPythonを確認すると2.73.6です。(2018年9月25時点)

$ ls /usr/local/lib -l
total 8
drwxr-xr-x 3 root root 4096 Jan 15  2018 python2.7
drwxr-xr-x 3 root root 4096 Sep 13 11:57 python3.6

Python3系でコード補完をするためには、PYTHONPATH値を修正します。

修正した値

/usr/local/lib/python2.7/dist-packages:/usr/local/lib/python3.6/dist-packages

プロジェクト設定の保存場所

プロジェクト設定画面で設定した値は、JSON形式でproject.settingsファイルに保存されます。

  1. 環境ウィンドウにある歯車アイコンを選択
  2. [Show Hidden Files]をチェックして隠しファイルを表示
  3. .c9フォルダ内のproject.settingsファイルをダブルクリック
  4. エディタタブ上に表示された、設定ファイルpython項目を確認

f:id:kitsugi:20180925064120p:plain

自分の環境では、プロジェクト設定からPythonのバージョンを変更したにも関わらず、反映されないケースがありました。 (リロードすると元に戻る)

その場合は、直接project.settingsファイルを編集して保存しました。

Pythonバージョン確認

新規にファイルを作成してバージョンを確認してみます。
コード補完が効いているか確認をしてください。

test.py

import sys

print(sys.version_info)

ファイルを保存して[Run]ボタンをクリックして実行します。
ランナーウィンドウにバージョンが表示されます。

Python3の場合

f:id:kitsugi:20180925070013p:plain

Python2の場合

f:id:kitsugi:20180925070021p:plain

ランナーウィンドウのRunner:言語ボタンから直接変更もできます。

ターミナル

ターミナルからPythonのバージョンを確認します。
エイリアス変更はご自由に。

$ python -V
Python 2.7.14

$ pip -V
pip 9.0.3 from /usr/lib/python2.7/dist-packages (python 2.7)

$ python3 -V
Python 3.6.5

$ pip-3.6 -V
pip 9.0.3 from /usr/lib/python3.6/dist-packages (python 3.6)

参考

  • AWSドキュメント
    • AWS Cloud9 Integrated Development Environment (IDE) でプロジェクト設定を操作する