
Mac(Catalina)上にpython使える環境を作るにあたり、インターネッツ見てたらいろんな流派があってわっかんなくなったのでまとめてました。
1. homebrewのインストール
なんかいろいろ便利なツールが使えるようになるので、とりあえずインストールしておくあれ。
「インストール」ってとこに書いてある呪文をMacのターミナルにコピペして実行すればいい。Xcodeのcommand line toolも必要だけど、最近はhomebrew入れるときに一緒にインストールしてくれるらしい。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
homebrewの主なコマンドは以下の通り。formulaはパッケージのこと。[formula name]
はパッケージ名です。
brew update
: 更新情報を取得する。ひさしぶりにやるとすっごい時間かかったりする。brew upgrade
: 更新を実行する。brew list
: インストール済みのformulaをリストする。brew install [formula name]
: formulaをインストール。brew uninstall [formula name]
: formulaをアンインストール。brew info [formula name]
: fomulaの情報を見る。
2. pythonをインストール
Macにもともとpython入ってますが、なんかhomebrewで入れたほうが都合いいみたいなんで。
% brew install python
実行時点では Python 2.7.16 と python3.9.4 が入りました。
あ、環境がCatalinaなので、プロンプトが $ ではなく % です。
pythonのインストール方法調べると pyenv 使うやついっぱい出てくるけど、バージョン合わせないと動かないようなものを作ったりしないので使いませんでした。
2.1. python3系 を python で動かす(オプション)
そのままだと python
で2系、python3
で3系が動きます。いまさら2系なんて使わんやろ、って場合は ~/.zshrc (Catalina以前なら ~/.bashrc)に 以下を追記すると python
で3系、python2
で2系を動かすようにできます。
でもこれやると、venv使うときに仮想環境下のpythonにパスが通らなくなるっぽい。
#alias
alias python="/usr/bin/python3"
alias python2="/usr/bin/python"
書き終わったら source
。
% source ~/.zshrc
2.2. pipのアプデ(オプション)
python入れたついでにpipの新しいVer.がきてたのでアプデ。でも普通にやったなんかエラー吐いた。
% python -m pip install --upgrade pip
Collecting pip
Using cached https://files.pythonhosted.org/packages/fe/ef/60d7ba03b5c442309ef42e7d69959f73aacccd0d86008362a681c4698e83/pip-21.0.1-py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 19.0.3
Uninstalling pip-19.0.3:
Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: 'RECORD'
Consider using the `--user` option or check the permissions.
You are using pip version 19.0.3, however version 21.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
「--user
オプションつけてみ?」って書いてあったのでその通りにしたらアプデできました。
% python -m pip install --upgrade pip --user
3. venv で仮想環境を構築
プロジェクトごとに使うライブラリを分けたいとかなんかそういう感じの理由から venv で仮想環境を構築してその中で開発を進めるようにします。venv は python 3.3 から標準で入ってるのですぐ使えます。
仮想環境のファイルを置きたいディレクトリに移動してから、venv のコマンドを実行します。
% cd [path/to/dir]
% python3 -m venv [venv name]
[path/to/dir]
は仮想環境を置くディレクトリ、[venv name]
は仮想環境の名前(およびディレクトリ名)です。
「あーなんか構築しくったわー直す気なくなったわー」というときは 仮想環境のディレクトリごと消せばすべてなかったことにできます。
どこに仮想環境を置くかについては、仮想環境用のディレクトリを用意してそこに全部つっこんだり、プロジェクトのディレクトリにそのプロジェクト用の仮想環境をいれたり、人によって作法があるみたいです。
続いて仮想環境に入るため /bin/activate
を叩きます。
% source [venv name]/bin/activate
仮想環境に入っているときは ([venv name]) がプロンプトの頭に付きます。たとえば仮想環境名が myvenv だったらこんな感じ。
(myvenv) user [path/to/dir] %
pipもpython 3.4 から標準で入ってるのですぐお使いいただけます。
(myvenv) user [path/to/dir] % pip -V
(myvenv) user [path/to/dir] % pip install Django
仮想環境から出るときは deactivate
します。
(myvenv) user [path/to/dir] % deactivate
環境構築いつもわかんなくなる
いまさらですが、別にhomebrew使わなくてもよかったような気がしてきた……。まあいいか。
結局、プログラミングって環境を整えるのが一番めんどくさいんですよねぇ。そんな毎回やるようなものでもないから次に必要になったときは忘れてるし、いつのまにかお作法変わってたりするし。
巷に溢れる「〇〇入門」みたいな本も全体の1/3くらい環境構築にページ割いてて、なんかもう環境構築しただけで満足するっていうか。構築できるならまだ優秀で、うっすら情報が古くなってて書いてある通りにいかず、入門すらできない人も多いんじゃないかと思いますが、ひとつひとつ! 心を込めた物づくり! 今日も一日ご安全に!