Debian IMHO has the worst take on that (see the venv module).
Pyenv definitely solves it, but I talked about an officially supported solution.