エンジニア4年目のブログ

Javaエンジニア4年目のブログです。

pyenvでPythonのバージョン管理しようと思って戸惑った話

どうもShZgZです。
今日はちょっと涼しいですね。。。気のせいか。

tensorflow触ってみようと思って紆余曲折ありPythonのバージョンを下げなくてはならなくなりpyenvを使ってみようとしたときの話です

とりあえず、

Python3.7でTensorflowやろうと思うと上手くいかないことが多い(2018/08/17時点)

どうしてもこれだけは言っておきたかった。

というわけで、今回はpyenvを入れていきます。まぁやっぱりbrewです。

環境:macOS High Sierra 10.13.4

$ brew install pyenv
$ pyenv install 3.6.6

pyenvは入ったんだけど、ここでエラー

zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] Error 1

調べてみると、いくつかのサイトでx-codeのコマンドライン開発ツールをインストールすればいけるとのことだったので

$ xcode-select —install

その後、

$ pyenv install 3.6.6
$ pyenv versions
* system
  3.6.6

無事成功!

で、とりあえずlocalのPythonのバージョンを変更
(ディレクトリを指定して、その中にいる時のPythonバージョンを変更)

Tensorflowの開発用ディレクトリに移動し、
$ pyenv local 3.6.6
$ python —version
3.7.0

!?
変わらん。

PATHでpyenvが優先されてないので.bash_profileに

eval "$(pyenv init -)”

を追加し、

$ source ~/.bash_profile
$ python —version
3.6.6

無事成功!!!

まとめ
今まで特にpythonのバージョンとか気にする必要なかったけど、
必要になった時に簡単にバージョン管理できるのはとても良い。
他の言語をやるときにもバージョン管理は最初からしといたほうがいいと思った。

言語のバージョン管理は大事!!

でわ。