pyenv 不要説

macOS ローカルで Pythonエフェメラルなスクリプトや小規模で実験的なプロジェクトを作る場合、pyenv いらんやろという結論に至った。 Python は Homebrew によりインストールし、これを直接使う。 現環境には次の Python formulae がインストールされている。

  • python@3.7
  • python@3.8
  • python@3.9

これらは、意識的にインストールしたものではないが、依存関係により、たまたまインストールされていた。 自分の目的では、ほとんどの場合、最新版が使えればよく、これら3つのバージョンが選択できれば十分である。 ~/.config/fish/config.fish にて、新しいバージョンを優先して $PATH に通した。

set -p fish_user_paths \
    "/usr/local/opt/python@3.9/bin" \
    "/usr/local/opt/python@3.8/bin" \
    "/usr/local/opt/python@3.7/bin"

これで、次のような python3.x 形式のコマンドが利用可能になる。

Executable Version
python3 3.9
python3.9 3.9
python3.8 3.8
python3.7 3.7

Virtualenv 周りは手探りだが、まず Poetry、次点で Pipenv という感じでやっている。

$ python3 -m pip install --user poetry
$ python3 -m pip install --user pipenv
$
$ cd /your/workspace/dir
$
$ # init virtualenv
$ python3 -m poetry init
$ # or
$ python3 -m pipenv --python (which python3)
$
$ # activate virtualenv
$ source .venv/bin/activate.fish