PATHを通すために環境変数の設定を理解する (Mac OS X)
グローバルのpython3を使っていた
これを修正したい
理由:VSCodeでPythonを使う場合、公式サイトでbrewでのインストールが勧められている
vscodeプラグインをインストールしたが、グローバルのpythonからはデバッグを利用できないようだ
python3 --version =>Python 3.8.2 //グローバルのpythonを使っている これは良くない % which python3 =>/usr/bin/python3
brew でpython3をインストールする
brew install python3 //情報をみる brew info python3 => Interpreted, interactive, object-oriented programming language https://www.python.org/ /usr/local/Cellar/python@3.9/3.9.1 (9,232 files, 135.2MB) * Built from source on 2020-12-17 at 09:47:25 //python3.9がインストールされている From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/python@3.9.rb License: Python-2.0 ==> Dependencies Build: pkg-config ✔ Required: gdbm ✔, openssl@1.1 ✔, readline ✔, sqlite ✔, xz ✔ ==> Caveats Python has been installed as //インストール場所 /usr/local/bin/python3 Unversioned symlinks `python`, `python-config`, `pip` etc. pointing to `python3`, `python3-config`, `pip3` etc., respectively, have been installed into /usr/local/opt/python@3.9/libexec/bin You can install Python packages with pip3 install <package> They will install into the site-package directory /usr/local/lib/python3.9/site-packages
このPATHにPython3がインストールされた
.zshrcにPATHを追加
export PATH="/usr/local/bin/python3:$PATH"
追加したあとは
source .zshrc
で設定を反映しておくこと
左のPATHと右の$PATHの違いについて:どうして2つも必要なのだろうか?
左辺のPATHは、exportを利用してPATHを設定しただけ。
exportは、割り当ての左側にある環境変数を割り当ての右側にある値に設定します。 このような環境変数は、それを設定するプロセスと、同じ環境で生成されたすべてのサブプロセス、 つまりこの場合はソースを生成するBashインスタンスに表示されます。
つまり右辺の$PATHには、すべてのPATHが含まれている変数だと考えると良い
vim /etc/paths でパスを確認
これらが上位から優先順位をもっている
/usr/local/bin /usr/bin /bin /usr/sbin /sbin
パスを確認するには echo $PATHとする
グローバル変数なので、たくさん出てきます。
% echo $PATH .nvm/versions/node/v12.16.1/bin: /usr/local/opt/openssl/bin: /.nodebrew/current/bin: /usr/local/bin:/usr/bin: /bin: /usr/sbin: /sbin: /Library/Apple/usr/bin: /.nvm/versions/node/v12.16.1/bin: /usr/local/Cellar/fcrackzip: /usr/local/opt/openssl/bin: .nodebrew/current/bin
.zshrcに記載したので今度は、brewでインストールした、python3を使っている
% python3 --version Python 3.9.1 % which python3 /usr/local/bin/python3
めでたし、めでたし
おじいさんとおばあさんは、仲良く長生きをして、Pythonでプログラミングを楽しんだそうじゃ、、、