mac に乗り換えてデフォルトで python 入ってんだ、へぇと思い、
VSCode 使ってコード書いてみたら、こんな感じで軽く注意された
You have selected the macOS system install of Python,
Which is not recommended for use with the Python
extension. Some functionality will be limited, please select a
different interpreter.
デフォルの python は VSCode 非推奨と言っとる。。
色々ゴニョゴニョやって怒られなくなったのですが、もう一度同じ事ができる気がしなかったのでメモ
環境
macOS Mojave 10.14.2
Visual Studio Code 1.30.2
Python 2.7.10
の環境に以下を追加する
pyenv 1.2.9 → pythonの複数バージョンを切り替えるため
anaconda3-5.3.1 → 色々入ってて便利なため
VSCodeの拡張機能
VSCode の拡張機能から、 python
と入力して入れる
pyenv インストール
$ brew install pyenv
brewは 公式を参考に1ライナーでインストール可能
pyenv のインストールが無事終わると、最後の方に忠告がある
==> Caveats
To use Homebrew's directories rather than ~/.pyenv add to your profile:
export PYENV_ROOT=/usr/local/var/pyenv
To enable shims and autocompletion add to your profile:
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
・ デフォルトだと ~/.pyenv
なので、 /usr/local/var/pyenv
を指定してね。的な
・ 自動補完機能使うには、 eval "$(pyenv init -)"
やってね。的な
忠告に従い以下の様に追記
$ vi ~/.bash_profile
export PYENV_ROOT=/usr/local/var/pyenv
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
$ . ~/.bash_profile
因みにどうでもいいですが、以下を eval
で評価して実行してた
$ pyenv init -
export PATH="/usr/local/var/pyenv/shims:${PATH}"
export PYENV_SHELL=bash
source '/usr/local/Cellar/pyenv/1.2.9/libexec/../completions/pyenv.bash'
command pyenv rehash 2>/dev/null
pyenv() {
local command
command="${1:-}"
if [ "$#" -gt 0 ]; then
shift
fi
case "$command" in
rehash|shell)
eval "$(pyenv "sh-$command" "$@")";;
*)
command pyenv "$command" "$@";;
esac
}
pyenv のインストールが完了
$ type pyenv
pyenv is /usr/local/bin/pyenv
$ pyenv --version
pyenv 1.2.9
python3のインストール
インストール可能なリストを表示
$ pyenv install -l | grep anaconda3
anaconda3-2.0.0
anaconda3-2.0.1
anaconda3-2.1.0
anaconda3-2.2.0
anaconda3-2.3.0
anaconda3-2.4.0
anaconda3-2.4.1
anaconda3-2.5.0
anaconda3-4.0.0
anaconda3-4.1.0
anaconda3-4.1.1
anaconda3-4.2.0
anaconda3-4.3.0
anaconda3-4.3.1
anaconda3-4.4.0
anaconda3-5.0.0
anaconda3-5.0.1
anaconda3-5.1.0
anaconda3-5.2.0
anaconda3-5.3.0
anaconda3-5.3.1
anaconda3-2018.12
最新を入れる(5分ぐらいかかった気がします)
今回はanaconda入れてますが、普通に2系とか3系とか入れれます
$ pyenv install anaconda3-5.3.1
Downloading Anaconda3-5.3.1-MacOSX-x86_64.sh.sh...
-> https://repo.continuum.io/archive/Anaconda3-5.3.1-MacOSX-x86_64.sh
Installing Anaconda3-5.3.1-MacOSX-x86_64.sh...
Installed Anaconda3-5.3.1-MacOSX-x86_64.sh to /usr/local/var/pyenv/versions/anaconda3-5.3.1
インストールが終わったら、 pyenv versions
で切り替え可能な python を参照
~$ pyenv versions
* system (set by /usr/local/var/pyenv/version)
anaconda3-5.3.1
pyenv global 'Interpreter'
で切り替える
$ pyenv global anaconda3-5.3.1
もう一度 pyenv versions
で確認してみると、「*」の場所が変わってる
$ pyenv versions
system
* anaconda3-5.3.1 (set by /Users/ando/.pyenv/version)
インタプリタちゃんと変わってた
$ python -V
Python 3.7.0
$ type python
python is /usr/local/var/pyenv/shims/python
因みに、 pyenv local Interpreter
とすると、そのディレクトリのみ切り替わる
~$ mkdir py2
~$ cd py2
~/py2$ pyenv versions
system
* anaconda3-5.3.1 (set by /usr/local/var/pyenv/version)
~/py2$ pyenv local system
~/py2$ python -V
Python 2.7.10
~/py2$ cd ..
~$ python -V
Python 3.7.0
VSCode の Python Interpreter の指定
ようやく本題
Code → 基本設定 → 設定
適当にスクロールしてどこかしらで、 settings.json を見つけて編集
をポチ
で以下の様にインストールした python のインタプリタを指定
{
"python.pythonPath": "/usr/local/var/pyenv/versions/anaconda3-5.3.1/bin/python"
}
ワークスペースの設定
にも同様に指定
※ここポイント(これやんなくて、あれって30分ぐらいなってた)
"settings": {
"python.pythonPath": "/usr/local/var/pyenv/versions/anaconda3-5.3.1/bin/python"
}
これで VSCode で pythonファイル開いても、警告がでなくなりました
因みに VScode でF1押して、検索窓出して、 Python: Select Interpreter
と入力すると、
インタプリタの指定が出来ます。そして、macデフォルトを指定すると当たり前ですがまた警告が出ます。
python2系使う場合、 pyenv で別途インストールが必要です。