Python 虚拟环境配置
Python 有个令人头痛的问题:不同项目之间的依赖包版本不一致,而 pip 只允许一种版本的包被安装在全局环境中,导致可能不小心升级了某个包,其他项目无法运行了。
我们可以使用虚拟环境来解决这个问题。目前有以下几种主流的解决方案:
venvuv venvvirtualenvconda- ……
1 venv
venv 是 Python 3.3 版本后自带的虚拟环境工具,优点是简单易用,缺点是功能相对较少,且不支持本机未安装的 Python 版本。
1.1 创建、激活和删除
-
创建虚拟环境
python3 -m venv <env_name>其中
<env_name>是你想要创建的虚拟环境的名称,习惯上使用.venv。 -
激活 & 取消激活
在 Linux 和 macOS 上:
source <env_name>/bin/activate在 Windows 上:
<env_name>\Scripts\Activate.ps1激活后在命令行前面会出现虚拟环境的名称,表示当前处于该虚拟环境中。

取消激活:
deactivate或直接关闭终端窗口。
-
删除虚拟环境
直接删除虚拟环境目录即可。
1.2 安装包
在虚拟环境中使用 pip 安装包,安装的包只会在当前虚拟环境中可用。
pip install <package_name>
如果报错 Fatal error in launcher: Unable to create process using ...,尝试:
-
删除
<env_name>/Libs/site-packages/pip目录 -
在激活的终端执行:
python -m ensurepip python -m pip install --upgrade pip -
重新安装需要的包
1.3 使用他人的虚拟环境
拿到他人的虚拟环境时,进入虚拟环境目录,打开 pyvenv.cfg 文件。
把 home 的值改为你本机的 Python 安装路径,executable 的值改为你本机的 Python 可执行文件路径,command 的值也相应地进行修改。
2 uv venv
uv venv 是 uv 的一个子命令,需要先 pip install uv。主要优点是快,缺点是不支持 Python 3.7 以下版本。
2.1 创建、激活和删除
-
创建并激活
# 创建默认虚拟环境 uv venv # 创建指定名称的虚拟环境 uv venv <env_name> # 创建指定名称和 Python 版本的虚拟环境 uv venv -p <python_version> <env_name> -
手动激活
.\<env_name>\Scripts\activate.bat -
取消激活
deactivate -
删除
删除虚拟环境目录即可
2.2 安装包
在 pip 指令前加上 uv 即可:
uv pip install <package_name>
2.3 其他
uv 还提供了一些比较实用的功能:
uv run <script>:运行指定的 Python 脚本,自动激活虚拟环境uvx <package_name>:在不安装包的情况下运行该包uv python install <python_version>:安装指定版本的 Pythonuv python list:列出已安装的 Python 版本
详见官方文档