使用UV创建python项目

Python的UV工具介绍

UV(Ultra-Violet)是Python生态中一款新兴的轻量级包管理工具,旨在替代pip和pip-tools,提供更快的依赖解析与安装速度,支持多平台和锁定文件机制。

假设你的机器上只有:

复制代码
Python 3.13

执行:

复制代码
uv init my-api --python 3.15

uv 会:

  1. 创建项目目录
  2. 生成 pyproject.toml
  3. 生成 .python-version

类似:

复制代码
[project]
name = "my-api"
requires-python = ">=3.15"

.python-version
3.15

此时通常还不会检查本机是否安装了 3.15。


真正需要 Python 3.15 的时候是在后面执行:

复制代码
uv sync

或者:

复制代码
uv run python

这时 uv 会:

  1. 查找本地是否有 3.15
  2. 没有的话自动下载 3.15
  3. 创建 .venv

例如:

复制代码
Downloading cpython-3.15.x
Creating virtual environment...
Installed packages...

整个过程通常是自动完成的。


一个完整例子

假设全新机器:

复制代码
系统只有 Python 3.13

执行:

复制代码
uv init my-api --python 3.15

cd my-api

uv add "fastapi[standard]"

uv sync

当 uv sync 发现:

复制代码
需要 Python 3.15
本机没有

会自动下载:

复制代码
cpython-3.15.x

然后创建:

复制代码
my-api/
├── .venv
├── .python-version
├── pyproject.toml
└── uv.lock

此时:

复制代码
uv run python --version

输出:

复制代码
Python 3.15.x

唯一容易报错的情况

如果你显式禁止下载:

复制代码
uv sync --no-python-downloads

或者配置了:

复制代码
python-downloads = "never"

那么本机没有 3.15 时会报错:

复制代码
No interpreter found for Python 3.15

所以正常情况下:

复制代码
uv init my-api --python 3.15

即使电脑上没有 Python 3.15,也不会有问题;等到 uv sync 时,uv 会自动帮你安装对应版本的 Python。

相关推荐
日日大王学编程20 分钟前
AI Agent 技术发展历程、演进逻辑与技术范式综述
人工智能·python
春涧草茶32 分钟前
慢就是快16-1协程
开发语言·前端·python
5233AI开发笔记1 小时前
API 返回 429:先区分限速、并发和配额,再决定是否重试
python
databook1 小时前
经常听到的透视表是干什么的?
python·数据分析·pandas
特立独行的猫A2 小时前
我用仓颉写了个多平台发文工具:一份 Markdown,一条命令发六个平台
java·后端·python
陆陆陆六2 小时前
# 五个AI引擎的答案采集:反爬、去重与时间窗对齐的三个工程细节
python·net·ai答案采集
小小张说故事4 小时前
Python 的 a[1:5:2] 到底切出了什么?拆开 slice 对象、__getitem__ 与负步长那次反向
python
wuyk5555 小时前
PyQt6-第15讲-数据可视化QChart
python·ui·信息可视化·pyqt
天天被压力5 小时前
【A股分钟级高频数据完全手册 #04】指数分钟级行情数据接口:沪深指数Pro版最新分时取数
java·人工智能·python
日日大王学编程5 小时前
2026主流AI Agent产品分类、核心差异与技术特性全解析
人工智能·后端·python