使用 uv 在 Windows 上快速搭建 Python 开发环境

本教程将指导你如何在 Windows 系统上,使用 uv(一个由 Ruff 的作者开发的极速 Python 打包和项目管理工具)来快速创建虚拟环境并安装项目依赖。uv 可以看作是 venvpip 的一个更快、更现代的替代品。

环境要求

  • Windows 操作系统

  • 已安装 Python (本教程以 Python 3.12 为例)

  • Windows PowerShell


步骤 1: 安装 uv

首先,我们需要安装 uv。这里提供两种方法。

方法一:官方推荐脚本 (推荐)

  1. 从开始菜单搜索 PowerShell,然后选择 "以管理员身份运行"
  1. 在弹出的管理员 PowerShell 窗口中,执行以下命令,它会自动下载并安装 uv
powershell 复制代码
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

方法二:使用 pip 安装

如果你已经有一个可用的 Python 环境,也可以通过 pip 来安装 uv

powershell 复制代码
pip install uv

验证安装

安装完成后,可以运行以下命令检查 uv 版本,以确认安装成功。

powershell 复制代码
uv --version

如果成功,你会看到类似下图的版本号输出:

步骤 2: 创建并激活虚拟环境

项目开发的第一步是创建一个隔离的虚拟环境,以避免包版本冲突。

  1. 在你希望创建项目的文件夹中(例如 D:\uv-test),打开 PowerShell。

  2. 使用以下命令创建一个名为 .venv 的虚拟环境,并指定使用 Python 3.12:

powershell 复制代码
uv venv --python 3.12
  1. 激活虚拟环境

为了能在当前终端会话中使用这个新环境,你需要激活它。

注意:首次在 PowerShell 中运行脚本时,可能会因为安全策略而被阻止。你需要先执行以下命令来允许当前会话运行脚本。

powershell 复制代码
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

当系统提示时,输入 Y 并按回车。

现在,执行激活命令:

powershell 复制代码
.venv\Scripts\activate

成功激活后,你的命令行提示符前面会出现 (.venv) 的字样,如下图所示,表示你已进入虚拟环境。

步骤 3: 初始化项目并安装依赖

激活环境后,我们就可以开始管理项目依赖了。

  1. 初始化项目

运行 uv init 会在当前目录下创建一个 pyproject.toml 文件。这个文件用于记录你的项目信息和依赖项,类似于 requirements.txt 但功能更强大。

powershell 复制代码
uv init
  1. 添加项目依赖

现在,让我们安装一些常用的数据科学库。使用 uv add 命令可以同时完成安装和将依赖项写入 pyproject.toml 文件。为了加快下载速度,我们使用 -i 参数指定了清华大学的 PyPI 镜像源。

powershell 复制代码
uv add numpy pandas matplotlib scikit-learn seaborn -i https://pypi.tuna.tsinghua.edu.cn/simple

uv 会以极快的速度解析并安装这些包。


恭喜!

你已经成功地使用 uv 创建了一个干净、隔离的 Python 开发环境,并安装了所需的库。

后续常用操作:

  • 查看已安装的包uv pip list

  • 退出虚拟环境deactivate

如果你觉得这篇教程对你有帮助,欢迎访问我的博客 blog.mashijian.com 获取更多关于AI、大模型和深度学习的实战教程与技术分享!

相关推荐
武子康10 分钟前
Java-168 Neo4j CQL 实战:WHERE、DELETE/DETACH、SET、排序与分页
java·开发语言·数据库·python·sql·nosql·neo4j
天地之于壹炁兮18 分钟前
元素认证的智慧:Python分支魔法的艺术与禁忌
windows·python
闲人编程24 分钟前
Python与大数据:使用PySpark处理海量数据
大数据·开发语言·分布式·python·spark·codecapsule·大规模
daqinzl1 小时前
Ubuntu 使用 Python 启动 HTTP 服务
python·ubuntu·http server 服务
qunshankeji1 小时前
交通事故自动识别_YOLO11分割_DRB实现
python
小呀小萝卜儿2 小时前
2025-11-14 学习记录--Python-特征归一化方法(Min-Max或StandardScaler)
开发语言·python·学习
顾安r2 小时前
11.14 脚本网页 青蛙过河
服务器·前端·python·游戏·html
测试19982 小时前
如何用Appium实现移动端UI自动化测试?
自动化测试·软件测试·python·测试工具·ui·职场和发展·appium
Python私教2 小时前
第一个Python金融爬虫
爬虫·python·金融
nvd113 小时前
Python 迭代器 (Iterator) vs. 生成器 (Generator)
开发语言·python