This is how I do it:
- Manage python versions with
pyenv. Modern python comes with
- Don’t touch system python if you have it, in terms of installing packages, updating it etc.
- For projects, use virtual environments using one of the python version installed with step 1. I prefer
poetryat the moment to manage them.
pipxif you want to install a global utility, so it’s isolated from any projects.