Python管理工具UV

发布于:2025-06-24 ⋅ 阅读:(14) ⋅ 点赞:(0)

常用 UV 命令

安装

  • pip install uv

版本相关

  • uv python list 打印所有uv支持的python版本
  • uv python install cpython-3.12 安装指定的python版本
  • uv run -p 3.12 test.py 用指定的python版本运行python代码
  • uv run -p 3.12 python 进入python执行环境。假如输入的版本是一个本地不存在的,则uv会先下载,再进入该python环境

虚拟环境

  • uv init 在当前目录初始化一个pyhton项目,注意:不会把虚拟环境创建出来
  • uv init -p 3.13 初始化一个基于python 3.13的项目
  • uv init testfile 初始化一个python项目,且文件目录为testfile
  • 进入项目执行 uv venv 在当前项目创建一个虚拟环境
  • source .venv/bin/activate 激活当前虚拟环境
  • deactivate 关闭当前虚拟环境
  • uv add pydantic_ai 把pydantic_ai这个库安装到当前工程中
  • uv run main.py 假设当前项目有一个main.py,该命令是运行main.py
  • uv tree 打印整个工程的依赖树
  • uv add ruff --dev ruff是一个检查python格式的库,该命令用于安装ruff且以dev模式,避免打包的时候打进去
  • uv remove ruff --dev 从项目依赖中删除ruff库
  • uv tool install ruff 把ruff安装到系统全局环境,而不是当前项目,类似于npm install -g
  • uv tool list 查看系统中当前都安装了哪些python 工具
  • uv build 会把项目打包成一个.whl文件,然后这个文件发布后就可以让所有人使用了。打包前需要做点事情,在pyproject.toml中,指定脚本的名称和需要执行的文件:函数
[project.scripts]
testrun = "main.main"

当打包完并安装好后,就可以直接执行testrun了,具体执行的是main.py文件中的main函数

  • uv sync 类似如npm install,按照当前项目pyproject.toml文件中的依赖配置安装依赖,并生成uv.lock文件,如果有uv.lock了,就严格按照uv.lock里的版本下载

uvx什么作用?

核心功能

  • 自动拉取与执行
    当执行 uvx twine 时,会从 PyPI 自动下载最新版 twine 包,并创建一个临时虚拟环境运行它。
# 实际执行逻辑等效于: 
uv pip install --temp twine && python -m twine [command]
  • 零残留运行
    任务完成后自动清理临时环境,不会在本地留下安装痕迹(除非显式指定持久化)。

网站公告

今日签到

点亮在社区的每一天
去签到