uv
uv is an extremely fast Python package and project manager, written in Rust.
它号称比
pip快10-100倍。我的体验是可以让项目更工程化的管理,感觉有点像js的pnpm 包管理,而且它也使用中心化来存储和复用包。项目结构
uv init example会产生以下项目结构:. ├── .gitignore ├── .python-version ├── README.md ├── main.py └── pyproject.toml
使用
uv add [package] 会创建.venv 文件夹并在工作目录下创建虚拟环境。使用
uv run, uv sync, uv lock 会创建uv.lock 文件。. ├── .venv │ ├── bin │ ├── lib │ └── pyvenv.cfg ├── .python-version ├── README.md ├── main.py ├── pyproject.toml └── uv.lock
项目依赖
使用
uv add [package] 将包加入依赖并下载。使用
uv add -r requirements.txt从文本中添加依赖。使用
uv lock --upgrade-package [package]升级包,--upgrade-package 标志将尝试将指定的包更新为最新的兼容版本,同时保持锁定文件的其余部分不变。运行指令
uv run -- flask run -p 3000 在项目文件夹下运行指令。或者,使用
uv sync来手动更新虚拟环境,然后激活虚拟环境:uv sync source .venv/bin/activate flask run -p 3000 python example.py