この記事は Python Advent Calendar 2022 - 19日目 の記事となります。
TL;DR
asdfは便利なので使ってください。以下に対応コマンド集として、まとめるので困ったら見てください。
asdf便利ですね
linuxやmacでのpython環境構築といえば、はるか数億年前から議論されている結論が出ない問題で、pyenvを始めとしてvenv, pipenv, anacondaなど色々あって何が一番いいんだとなるPythonistaをよく見るので、この記事をきっかけに使ってみようと思った人が困らない程度のメモ書きを残せればというのが本稿の目的です。
anyenvみたいにそれぞれを毎回インストールするよりもasdfにまとまるのはとても便利なのと、コマンドがasdfなのでタイピングするのもなんか気持ちいい。
チートシート
asdfはpythonだけではなく様々な言語に対応しているため、言語をインストールする前に対応プラグインを追加する必要があります。
| pyenv | asdf | |
|---|---|---|
| python対応プラグインのインストール | asdf plugin add python | 
|
| 自身のバージョン確認 | pyenv -V | 
asdf version | 
| ヘルプ確認 | pyenv --help | 
asdf help | 
| pythonのバージョン確認(local) | pyenv version | 
asdf current python (参照先が $PWD/.tool-versions になっている) | 
| pythonのバージョン確認(global) | pyenv versions | 
asdf current python  (参照先が $HOME/.tool-versions になっている) | 
| インストール可能なpythonバージョン | pyenv install --list | 
asdf list all python | 
| pythonの(アン)インストール | pyenv (un)install VERSION_NAME | 
asdf (un)install python VERSION_NAME | 
| pythonバージョンの切り替え | pyenv (local/global) VERSION_NAME | 
asdf (local/global) python VERSION_NAME | 
| shimの再構築 | pyenv rehash | 
asdf reshim | 
まとめ
だいぶ便利ですね。pipenvと併用すればライブラリ管理もできるみたいですので、興味ある方はお試しを。