python環境を救いたい(PyCharmの設定)
はじめに
これまでPythonだとAnacondaを使っていました、(脳死なので)
ただ、このままだと以下のようなデメリット事項が多く発生します。
- 機械学習用のライブラリのバージョンを変えることができない
- サイズ容量を食う
- なんかつまらない
というわけでキレイにするためにPython環境を作り変えて
Anaconda -> PyCharm + pyenv + pyenv-virtualenv環境に変更しまいた
Anacondaの削除
Anacondaの削除ですが
のサイトや
のサイトを参考にすると良いです。
特に引っかかる点はない感じです。
sourceコマンド
よくsourceコマンドが記事にでてきますが、
これは、変更した.bash_profileをもう一度読み込むコマンドです。
よって、ターミナル・Bashを一度閉じて再起動すれば使わなくてよいかと思います。
pyenvのインストール
Pyenvは、Pythonのバージョン、
例えば
- 2.7.0
- 3.6.4
- 3.6.3
- Anaconda3-5.1.1
など、それぞれのバージョンを任意に切り替えれるようにしてくれるパッケージです。
嬉しいですね。
Macだと
brew install pyenv
でインストールでき、おそらくインストールした時点でPATHも通ると思います。
pyenvのPython実行環境の追加
pyenvではpythonの実行環境を追加できます。
pyenv install --list
と打ち込めば、Pyenvの現在インストールできるリストを取得できるため、
pyenv install 3.5.3
などとするとそのバージョンのPythonをインストールできます。
pyenvの切り替え
インストールした後はpyenvの実行環境を入れ替えましょう。
pyenv versions
と打ち込むと
system
* 3.6.0 (set by /usr/local/var/pyenv/version)
3.6.0/envs/kerasenv
kerasenv
のように現在インストールされているものが表示されます。
そこで
pyenv local 3.6.0
とすると、現ディレクトリ以下がこの3.6.0のバージョンになります。
また、
pyenv global 3.6.0
とすると環境全部がこのバージョンになります。
virtualenvのインストール
virtualenvは, pyenvと異なり
「あるバージョンのPython下で、プロジェクトごとにpipモジュールを変えるため」のツールです。
例えば、DeepLearningをやりたい!というときは
pyenvで指定した3.6.3のpythonを利用して、virtualenvで一個仮想的な3.6.3の実行環境を作り、その中でpipモジュールインストールを行います。
このようにする利点として
ともに3.6.3のPythonを使いたいとしても
強化学習用のディレクトリ
と
画像識別用のディレクトリで
使用するKerasのバージョンが異なる!などがあります。
そのため、あるPythonのバージョンの元で、仮想的な実行環境が作れると便利、そしてそのツールがvirtualenvです。
インストールですが
brew install pyenv-virtualenv
を利用します。
書籍によっては
brew install virtualenv
とありますが、現在はvirtualenvはpyenvのプラグインとして開発されているようです。
(ただ、現在はPython公式がvenvとしてvirtualenvを再開発しているので、そのうちvirtualenvが使われなくなるのかな、というイメージです)
virtualenvによる環境切り分け
pyenvでインストールした3.6.0のPython3で、デスクトップ上に
Kerasを実行するための環境構築を考えてみます。
まず、DesktopにKerasという名前のフォルダを作って移動しましょう。
cd ~/Desktop
mkdir Keras
cd Keras
その後、このフォルダ用の仮想環境を作成します。
pyenv virtualenv 3.6.0 keraspy
としてみます。
これは、virtualenvでpython3.6.0バージョンを利用し、keraspyという名前で新しく環境を作ってくれな!
という意味です。
そして、このKerasディレクトリ以下でこの環境を使いたいので
pyenv local keraspy
としましょう。
これで、このKerasフォルダ以下は、いくらpipインストールをしてもこのkeraspy環境しか汚さず
大元の3.6.0のPythonはもちろん、OSも汚しません。うれしい
PyCharmの設定
この状態でPyCharmでKerasフォルダを開いてみます。
しかし、なぜかErrorが出るようです
(PyCharmだと実行環境を読み込んでインタープリタを設定してくれるはずなのですが)。
以下のような手順でPythonの実行環境を設定します。
現在Kerasフォルダ内で以下のコマンドを打つとこのように描画されるはずです。
yourhostname:keras yourname$ pyenv version
kerasenv (set by /Users/yourname/Desktop/keras/.python-version)
この/.python-versionはシンボリックリンクで
以下のファイル
$ pyenv versions
system
3.6.0
3.6.0/envs/kerasenv
* kerasenv (set by /Users/iwasakiyu/Desktop/keras/.python-version)
3.6.0/envs/kerasenvを参照しています。
よって、これをPyCharm上で設定したい気持ちになります。
まず設定画面を開きます。
そして、右上の歯車マークをクリックします。すると、追加というボタンがでるのでそのボタンを押します。(英語版ではAddです。)
すると、以下のような画面が現れます。
この「Pythonインタープリターの追加」
で
Virtual Environment -> 新しい環境 -> ロケーションのフォルダアイコン
をクリックし
使いたい仮想環境
/usr/local/var/lib/pyenv/versions/keras
を選択してください。
これで、Pyenv-Virtualenv下で、PyCharmを使用することができます。
(そもそもPyCharm自体仮想化できますが・・・)
むずかしい
環境構築の書き方が難しいため、他の人の記事をみて、もっと勉強していきたいです。
追記
pyenvを入れたのにOSのsystemのPythonが優先されるとき
pyenvを入れても、うまく動作しない、OSのPythonが起動してしまう場合は
コマンドを探しに行く優先順序を決める$PATHの設定が間違っている可能性があります。
pyenvのディレクトリを先に見に行かせる必要があるため
$PATHを書き換えましょう。
このサイトが分かりやすかったです。
PyCharmのもっと簡単な設定
localにpyenv + virtualenvで作った環境は
下画面のExisisting Environmentで表示されるためそちらを選択するともっと楽でした。
Author And Source
この問題について(python環境を救いたい(PyCharmの設定)), 我々は、より多くの情報をここで見つけました https://qiita.com/ganyariya/items/c1f5eccbebbfdfa74f9a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .