MacでPythonを扱う1つの方法
はじめに
初めてMacを買ってPythonを導入するのに迷ったので、備忘録ついでに書き残します。
アジェンダ
- Homebrewの導入
- zshの導入
- pyenvの導入
- pipenvの導入
Homebrewの導入
Homebrewとは?
Mac用のパッケージ管理システム
Homebrew(ホームブルー)は、macOSオペレーティングシステム(およびLinux)上のパッケージ管理システムのひとつである[1]。同じくmacOSのためのMacPortsやFinkと同様の目的と機能を備え、利用が広がりつつある。LinuxのDebianのAPTに似た使用感である。Max Howellによって開発された。
Wikipedia(Homebrew (パッケージ管理システム))より抜粋
よくわからんけど、便利なパッケージを探して→Macにインストールして→バージョン管理もしてくれるスグレモノらしい。
その程度の認識。。。
ちなみに、Brewは(ビールの)醸造って意味らしく、Homebrewで自家醸造となるらしい。
自分の好みで使ってくれ、ってことかな?
Homebrew導入
Homebrew 公式
下記コマンドを実行してください、とのこと。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
するとなにやら色々と裏で実行されて、Homebrewがインストールされます。
インストールされたことを確認するために下記コマンドを実行しましょう。
$ brew --version
Homebrew 2.1.9
Homebrew/homebrew-core (git revision bb5f; last commit 2019-08-08)
Homebrew/homebrew-cask (git revision a705d8; last commit 2019-08-08)
のように表示されるはずです。
これで、Homebrewの導入は完了。
zshの導入
zshとは?
正式名称は Z Shell
- プログラム可能な補完機能によって、多くのユーザーコマンドのオプションや引数を打つのを支援する(インストールの時点で数百のコマンドをサポートしている)。
- ユーザーの起動している全ての zsh でコマンド履歴を共有することができる。
- 拡張ファイル名生成(ワイルドカード展開)によって find のような外部コマンドを呼び出さないで、ファイル名を展開する。
- 変数や配列の処理が改善されている。
- 複数行コマンドをバッファーで編集できる。
- 綴り字修正機能
- 様々な互換モードがある。例えば、zshをshとして実行したとき、bashの振りをするようにできる。
- プロンプトテーマ
- 端末の右端に情報を表示し長いコマンドを打っているときは自動的に隠れる右プロンプトを表示できる。
- 殆ど全部のカスタマイズが可能。
なにやら色々と便利で自由にカスタマイズ出来るところが人気らしい。
なお私は使いこなせていないもよう。
zsh導入
先程インストールしたHomebrewを使い、Zshをインストールする。
$ brew install zsh
これで、Homebrewが管理をしつつ、パッケージをインストールすることができた。
インストールされたかを確認するために、下記コマンドを実行しよう。
$ zsh --version
zsh 5.7.1 (x86_64-apple-darwin18.2.0)
のように表示されるはず。
しかし、Shell自体は勝手に変更されることはないので、前準備を行う。
まず、HomebrewでインストールしたZshをMacが認識するように、/etc/Shellsの内容を書き換える
List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/usr/local/bin/zsh (← これを追記)
その後に、下記コマンドを実行してからTerminalを再起動する。
$ chsh -s /usr/local/bin/zsh
これでZshの導入も完了。
Pyenvの導入
Pyenvとは
複数のPythonを管理できるライブラリ。
大きな括りでいえば、Python3系とPython2系を両立させたいとか、Anacondaも使いたいとかのニーズに答えて、Pythonのバージョン管理を楽にしてくれるライブラリ。
Pyenvの導入とPythonのインストール
例によってHomebrewから。
$ brew install pyenv
次にPythonをインストールします。
$ pyenv install --list
で必要なPythonのバージョンを探します。
で、見つかったら
$ pyenv install x.x.x.
でインストール
でもまだインストールしただけなので、全体に認識させる必要があります。
なので下記コマンドを実行します。
pyenv global x.x.x
これで全体が指定したPythonのバージョンを利用するようになります。
pipenvの導入
pipenvとは
Pythonプロジェクトのための仮想環境を作成するために必要なすべての手段を提供するツールです。パッケージをインストールまたはアンインストールするときに Pipfile ファイルを介して自動的にプロジェクトパッケージを管理します。
Pycharmより抜粋
pipに仮想環境の機能をつけたようなもの(暴論)
pipenv導入
Homebrewから。
$ brew install pipenbv
インストール後、任意の開発フォルダを作成し、移動します。
移動先のフォルダで下記コマンドを実行します。
$ pipenv install
$ pipenv shell
これで仮想環境ができました。
あとはライブラリをインストールするだけです。
pipenv intall 'ライブラリ名'
でライブラリが
インストールされ、内容がPipfileとPipfile.lockに書き込まれます。
これPythonの仮想環境作成が完了しました。
自分はここまでやるのに結構な時間かかりましたが。。。。
誤りあればご指摘ください。