Pyton3 cloud9 環境設定 |未完|

cloud9のpythonバージョンが2から3へ切り替わらない ここを参照、しかし問題は未解決。
Cloud9でpython3を動かす時にやっておきたいこと

pipとは

ピップと読むらしい。 パイソンのパッケージ管理ツール RailsのBundlerのようなものか。 またPyPI(パイピーアイ)というライブラリを集めたサイトがある。 Jupyter Notebookをインストールしておくとサンプルコードを追いやすくなる。

http://jupyter.org/install

そのためにAnacondaをインストールする。

https://www.anaconda.com/download/#macos

ec2-user:~/environment $ python --version Python 2.7.14 バージョンが2なので3へ変更 まずメニュー[Cloud9]→[Preferences]
f:id:happy_teeth_ago:20180816123801p:plain

which pythonでするとエイリアスだった。 よってpython3へエイリアスを設定。 python3のフォルダは以下

ec2-user:/usr/bin $ ls -l| grep python
lrwxrwxrwx   1 root root         24 Aug  7 13:11 python -> /etc/alternatives/python
lrwxrwxrwx   1 root root         17 Aug  7 13:11 python2 -> /usr/bin/python27
-rwxr-xr-x   1 root root       5120 May  2 18:32 python27
-rwxr-xr-x   1 root root       5120 May  2 18:32 python2.7
-rwxr-xr-x   1 root root       1846 May  2 18:31 python2.7-config
lrwxrwxrwx   1 root root         25 Aug  7 13:11 python3 -> /etc/alternatives/python3
-rwxr-xr-x   3 root root       6872 Apr 26 00:16 python36
-rwxr-xr-x   3 root root       6872 Apr 26 00:16 python3.6
lrwxrwxrwx   1 root root         17 Aug  7 13:11 python3.6-config -> python3.6m-config
-rwxr-xr-x   3 root root       6872 Apr 26 00:16 python3.6m
-rwxr-xr-x   1 root root        173 Apr 26 00:16 python3.6m-config
-rwxr-xr-x   1 root root       3373 Apr 25 23:57 python3.6m-x86_64

確認して

ec2-user:/usr/bin $ alias python='/etc/alternatives/python3'
ec2-user:/usr/bin $ python --version
Python 3.6.5

と思いきやpipのバージョンが違う

ec2-user:/usr/bin $ readlink -f /usr/bin/python
/usr/bin/python36
ec2-user:/usr/bin $ pip --version
pip 9.0.3 from /usr/lib/python2.7/dist-packages (python 2.7)
ec2-user:/usr/bin $ python3 --version
Python 3.6.5
ec2-user:/usr/bin $ pip3 --version
bash: pip3: command not found

pip3がないと言われているのでインストールしようと思ったが

AWS Cloud9でPython3を使う方法 のサイトによると

書き換え後はsourceコマンドをお忘れなく あとある。もうちょっと書いてくれると嬉しい sourceとは、環境設定フアイルをカスタマイズしたときには、現在のシェル環境に反映させるためのもの シェルファイルは.tcshrcなどrcの文字が最後についていることが多い。 ~/.bashrc のようである。

ec2-user:/usr/bin $ source ~/.bashrc
function

戻っているいみがわからない。

ec2-user:/usr/bin $ python --version
Python 2.7.14

今度はpython36にリンクを貼る

ec2-user:/usr/bin $ alias python='/usr/bin/python36'
ec2-user:/usr/bin $ python --version
Python 3.6.5

sourceコマンドを実行するとバージョンが戻ってしまう。??

ec2-user:/usr/bin $ source ~/.bashrc
function
ec2-user:/usr/bin $ python --version
Python 2.7.14

?? 今度はパスを指定せずにエイリアスを設定。 うまく行った。?? 理由がわかならいので、良くない。
どなたか理由教えていただけますか?

ec2-user:/usr/bin $ alias python=python36
ec2-user:/usr/bin $ python --version
Python 3.6.5

そしてどちらのバージョンを使うかを決めるコマンドを入力。

ec2-user:/usr/bin $ sudo update-alternatives --config python
ec2-user:/usr/bin $ pip --version
pip 9.0.3 from /usr/lib/python3.6/dist-packages (python 3.6)

モデルが詰まった機械学習パッケージをインストール

pip install scikit-learn

しかしエラー

Exception:
Traceback (most recent call last):
  File "/usr/lib/python3.6/dist-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python3.6/dist-packages/pip/commands/install.py", line 342, in run