python的UV使用

python的UV使用

1、安装UV,在cmd命令行运行:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

运行成功后,也是在命令行添加环境变量:

set Path=C:\Users\wangxinghao\.local\bin;%Path%

如下图:

2、重新开个cmd窗口,运行:uv --version,查看是否安装完成

查看当前电脑安装的python版本:uv python find (个人觉得没啥用和uv python list一样可以查版本号)

我这里显示安装的是3.12

3、安装python某一个版本,比如python 3.13:uv python install 3.13

4、卸载某一个版本:uv python uninstall 3.13

5、使用uv命令创建一个python项目:uv init python_lianxi123

使用pycharm打开该项目之后,显示如下

5.1,如果文件夹已经创建,可以使用uv init命令,直接设置虚拟环境和其他配置

6、如果电脑安装了多个python版本,比如我安装了3.12和3.13,如果想固定某一个python版本,可以使用:uv python pin 3.12 (单词pin是:针的意思,就是钉住某一版本)

可以通过>uv python find 查看当前的python版本

然后用UV命令创建的python项目就会是3.12版本

7、如果原来是3.13版本,想切换为3.12版本,需要修改下面2个文件的python版本号

修改完版本号后使用:uv run main.py,在执行代码时,会删除原本

8、安装第三方库,比如安装requests库:uv add requests,优点是安装非常快,也可以安装具体一个版本的库:uv add requests==2.32.4

安装完成后项目会记录对应的第三方库和版本

9、查看当地版本库的依赖关系:uv tree

10、从给其他地方拿到的代码(比如git),如何创建虚拟环境并运行,使用:uv sync

1. 项目与依赖管理(核心)
命令说明示例
uv init在当前或指定目录创建一个新的 Python 项目。uv init my-project
uv add添加一个依赖包到项目,并自动更新pyproject.tomluv.lockuv add requests
uv add "pytest>=7.0"
uv remove从项目中移除一个依赖包。uv remove requests
uv sync根据pyproject.toml同步并安装项目所有的依赖(会自动创建/更新虚拟环境)。uv sync
uv lock更新项目的uv.lock锁定文件,但安装或同步环境。uv lock
uv tree以树形结构展示项目的完整依赖关系图。uv tree
uv build将项目打包成可分发的源码包(sdist)和 wheel 文件。uv build
uv publish将构建好的包发布到 PyPI 等包索引服务。uv publish
2. Python 版本与虚拟环境管理
命令说明示例
uv python list列出所有可用的(包括已安装和可下载的)Python 版本。带*的为当前默认版本。uv python list
uv python install安装指定版本的 Python。uv python install 3.12
uv python install 3.11.4
uv python pin将当前项目固定(pin)到特定的 Python 版本。uv python pin 3.11
uv venv手动创建一个虚拟环境(通常uv sync会自动处理)。uv venv --python 3.12
3. 运行与工具管理
命令说明示例
uv run核心命令。在项目的虚拟环境中运行指定的命令或脚本。uv run python script.py
uv run pytest
uv tool/uvx管理和运行用 Python 编写的全局命令行工具,功能类似pipxuv tool install ruff
uvx ruff check .

uvx小贴士uvxuv tool run的简写,它会在一个临时的虚拟环境中运行工具,用完即焚,非常适合偶尔使用的工具(如uvx black)。

4. 其他辅助命令
命令说明示例
uv pip提供一套与pip兼容的命令行接口,用于在当前激活的环境中管理包。uv pip list
uv pip install requests
uv cache clean清理uv的本地缓存,释放磁盘空间。uv cache clean
uv self updateuv自身更新到最新版本。uv self update
uv version显示当前安装的uv版本信息。uv version
uv help显示uv的帮助信息或特定命令的详细用法。uv help
uv help run