闲碎记事本 闲碎记事本
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

YAN

我要偷偷记录...
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • java

  • linux

  • docker

  • redis

  • nginx

  • mysql

  • 其他

  • 环境搭建

    • JDK安装
    • stable-diffusion-webui 安装
    • Roop安装使用
    • nexus部署和使用
    • Maven配置示例
    • Conda使用
    • Caddy操作指南
    • Alist使用
    • WSL使用
    • Node.js 版本管理与环境隔离
    • Python 版本管理与环境隔离
      • venv — 虚拟环境(标准库自带)
        • 创建和激活
        • 日常使用
      • uv — 新一代全能工具(推荐)
        • 安装
        • Python 版本管理
        • 项目管理
        • 虚拟环境操作
        • 从旧项目迁移
        • 为什么用 uv
  • Vibe Coding

  • Git

  • 知识库
  • 环境搭建
YAN
2026-05-29
目录

Python 版本管理与环境隔离

venv 管虚拟环境,标准库自带。追求速度的用 uv,一个工具全包了。

相关文档:venv (opens new window) | uv (opens new window) | Conda (opens new window)

# venv — 虚拟环境(标准库自带)

每个项目建个独立的虚拟环境,把依赖关在里面,互不污染。

# 创建和激活

# 在项目目录创建虚拟环境(名为 .venv)
python -m venv .venv

# 激活
source .venv/bin/activate        # Linux / macOS
.venv\Scripts\activate           # Windows CMD
.venv\Scripts\Activate.ps1       # Windows PowerShell

# 退出虚拟环境
deactivate

激活后命令行前面会出现 (.venv) 标识,此时 pip 装的包都在这个环境里,不污染全局。

# 日常使用

# 确认在虚拟环境中
which python    # 应该指向 .venv/bin/python

# 安装依赖
pip install requests flask

# 导出依赖清单
pip freeze > requirements.txt

# 从清单安装
pip install -r requirements.txt

# 删除虚拟环境(直接删目录就行)
rm -rf .venv

.venv/ 加进 .gitignore:

.venv/
__pycache__/

# uv — 新一代全能工具(推荐)

uv (opens new window) 是 Rust 写的,比 pip 快 10-100 倍,一个工具替代 venv + pip + pip-tools,还能管理 Python 版本本身。

# 安装

curl -LsSf https://astral.sh/uv/install.sh | sh

# Python 版本管理

# 安装指定版本的 Python(uv 自己管,不依赖系统)
uv python install 3.12
uv python install 3.11

# 查看已安装版本
uv python list

# 固定项目 Python 版本
uv python pin 3.12    # 生成 .python-version 文件

# 项目管理

# 初始化新项目
uv init my-project
cd my-project

# 添加依赖(自动创建虚拟环境)
uv add requests flask
uv add --dev pytest       # dev 依赖

# 移除依赖
uv remove requests

# 同步依赖(按 pyproject.toml 安装)
uv sync

# 运行脚本(自动用项目的虚拟环境,不需要手动 activate)
uv run python main.py
uv run pytest

# 虚拟环境操作

# uv 默认把虚拟环境建在 .venv/ 目录
# 激活方式跟标准 venv 一样
source .venv/bin/activate

# 或者不激活,直接 uv run,省事
uv run python script.py

# 从旧项目迁移

# 有 requirements.txt 的老项目,一键迁移
uv add -r requirements.txt

# 导出 requirements.txt(兼容老项目)
uv pip compile -o requirements.txt

# 为什么用 uv

对比项 pip + venv uv
安装速度 慢 快 10-100 倍
Python 版本管理 需要额外工具 内置
虚拟环境 手动创建激活 自动
依赖解析 基础 严格(像 poetry)
锁文件 无(pip freeze) uv.lock 精确锁定
工具链 pip + venv + pip-tools 一个 uv 全包

#Python#venv#uv
上次更新: 2026/08/18, 01:07:41
Node.js 版本管理与环境隔离
Vibe Coding

← Node.js 版本管理与环境隔离 Vibe Coding→

最近更新
01
Windows 和 Linux 环境下免密使用 SSH
08-11
02
Gradle 使用指南
05-29
03
Node.js 版本管理与环境隔离
05-29
更多文章>
Theme by Vdoing | Copyright © 2022-2026 YAN | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式