I'm using uv now. I'm also still using pyenv, but uv may replace the need for this in the future.
Setting up a development environment for Python can be a bit confusing, mainly stemming from the fact that there are multiple competing standards for package management.
Compared with JavaScript and Node.js, which indeed have several different popular package managers such as npm
, yarn
, and pnpm
, they at least all agree on a common manifest format (package.json
) and they are largely all interoperable with each other. In addition, it's very clear to new JS developers that npm
is where you ought to start.