心地よいライフハック

これ便利だな〜と思ったことなど

mac で 長く安全に使える python 環境を作る

とりあえず 手っ取り早く、ロングスパンで 安全に使える環境作りをしたい方向けに記事です。
 
根拠、詳細・準備は こちらが 参考になると思います。
 
上記 参照元のURL と python のバージョンが違うので、ここでは、2019/8/4 現在 最新の python 環境の構築 を行なっていきます。
 

 
環境:
10.13.6
 
事前準備
以下コマンドが使える状態にしておいてください。
 
 
 

 
pyenv コマンド をインストールします。
 
$ brew install pyenv
 
bash_profile の存在を確認。
$ ls -l ~/.bash_profile
 
$ vim ~/.bash_profile
 

( 追記内容 )
 
# pyenv コマンドは ~/.pyenvではなく、/usr/loca/var/pyenvを使うように設定
export PYENV_ROOT=/usr/local/var/pyenv
 
# pyenv に自動補完機能 を有効化
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi

 
 
 ~/.bash_profileに書いた内容を有効にする
$ source ~/.bash_profile
 
インストールできたか確認
$ brew list | grep pyenv
pyenv    <-  いることを確認
$ pyenv --version
pyenv 1.2.13
 
 
インストールできる python のバージョン確認
$ pyenv install -l
・・・
  3.6.9
  3.7.0
  3.7-dev
  3.7.1
  3.7.2
  3.7.3
  3.7.4
  3.8-dev
  3.9-dev
・・・
今回は、3.7.4をインストールする。
 
$ pyenv install 3.7.4
 
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.4.tar.xz...
Installing Python-3.7.4...
python-build: use readline from homebrew
 
 
( ここらで 5分くらい待ちました。 )
 
Installed Python-3.7.4 to /usr/local/var/pyenv/versions/3.7.4
 
インストール 完了!
 
現在 使用中の Python バージョン確認
$ pyenv versions
* system (set by /usr/local/var/pyenv/version)
  3.7.4
 
システム全体に反映
$ pyenv global 3.7.4
 
確認
$ pyenv versions
  system
* 3.7.4 (set by /usr/local/var/pyenv/version)
 
このような環境になりました。
 
~$ pyenv versions
  system
* 3.7.4 (set by /usr/local/var/pyenv/version)
Python 3.7.4 (default, Aug  4 2019, 14:15:00) 
[Clang 10.0.0 (clang-1000.10.44.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>  ここで ctrl+d  すると 安全にコマンドを終えます。
 

venv 仮想環境の作成
 
自分のユーザー名を確認
$ whoami
 
例えば 
/Users/ ユーザー名  /dev/python_dev に作成
 
$ mkdir -p 上記パス
 
$ cd /Users/ ユーザー名  /dev/python_dev
 
仮想環境を作るためのディレクトリ内 でコマンド
$ python -m venv py3env
 
以上で Python を使い始める準備が整いました。
 

 
今後  python コマンドを使うとき は、py3envを有効化してから使います。
 
$ cd /Users/ ユーザー名  /dev/python_dev
$ source py3env/bin/activate
 
python を使う。
 
仮想環境py3envを無効化するには、
(py3env) $ deactivate
 

 
以上です。
 
そのほか 実践的な python 系 ツールの紹介もしたの方にありますので、
とても 参考になります。