Instead of pyenv: uv
Use uv instead of pyenv. uv downloads prebuilt Python builds in seconds instead of compiling from source, and it works natively on Windows. It also picks the right version per project without shell shims.
Both are for installing and switching between Python versions.
Why uv is better
- pyenv builds each Python from source and needs a set of system build dependencies first. uv downloads prebuilt binaries from the python-build-standalone project.
- pyenv does not support Windows outside WSL and points users to a separate fork. uv runs natively on Windows, macOS and Linux.
- uv reads .python-version or requires-python and downloads a missing version when you run a command, with no shims or shell init.
- Version management sits in the same binary that handles packages and environments, so there is one less tool to install.
When to keep pyenv
Keep pyenv if you need a Python built with custom compile flags, or an obscure version and variant that python-build-standalone does not ship. It is also fine for people who only switch the global Python and never use uv.
Switching
Install uv and run uv python install for the versions you use. uv reads the same .python-version files pyenv writes, so most projects need no change. It treats pyenv-installed Pythons as system Pythons and will use them if they match. Remove the pyenv init lines from your shell profile once you stop using it.
Watch out
The prebuilt Pythons differ slightly from a source build, and uv's documentation lists the known quirks of python-build-standalone. Check those against your use before you remove pyenv.
Also worth a look
- mise A version manager for many languages that also uses prebuilt Python builds; pick it if you want one tool for Node, Go and Python versions.
More newer, better package managers and environment tools
Sources
- uv: Installing Python
- uv: Python versions
- pyenv README
- Real Python: Managing Python projects with uv
- Simon Willison: Thoughts on OpenAI acquiring Astral
Judged on 2026-11-06. See every package managers and environment tools, or all 66 replacements.