在Linux系统中进行Python项目开发时,虚拟环境是隔离项目依赖的重要工具,能够有效避免不同项目之间的包版本冲突,保证开发环境的稳定性。正确激活虚拟环境并运行脚本是开发过程中的基础操作,下面将从环境创建到脚本运行逐步说明。

创建Python虚拟环境
Linux系统通常自带Python3,我们可以直接使用内置的venv模块创建虚拟环境。首先打开终端,进入你想要存放项目的目录,执行以下命令创建虚拟环境:
# 创建名为myenv的虚拟环境,myenv可以替换为你自定义的名称 python3 -m venv myenv
如果执行命令时提示缺少venv模块,需要先安装对应的依赖,不同Linux发行版的安装命令如下:
- Ubuntu/Debian系:
sudo apt install python3-venv - CentOS/RHEL系:
sudo yum install python3-venv
激活Python虚拟环境
虚拟环境创建完成后,需要执行激活脚本才能将其切换到当前终端的生效环境。不同Shell的激活命令略有区别,常见的两种Shell操作如下:
Bash/Zsh Shell激活方式
在终端中执行以下命令,注意路径要对应你创建的虚拟环境所在位置:
# 激活虚拟环境,假设虚拟环境在当前目录下的myenv文件夹中 source myenv/bin/activate
Fish Shell激活方式
如果使用Fish Shell,执行以下命令激活:
# Fish Shell激活虚拟环境 source myenv/bin/activate.fish
激活成功后,终端的提示符前面会出现虚拟环境的名称,比如(myenv) user@hostname:~$,这说明当前终端的Python环境已经切换到虚拟环境,后续执行的pip安装命令都会将包安装到该虚拟环境中,不会影响系统全局的Python环境。
在激活的虚拟环境中运行脚本
激活虚拟环境后,就可以直接运行Python脚本了。首先确保你已经安装了脚本所需的依赖包,比如脚本需要requests库,可以先执行安装命令:
# 在激活的虚拟环境中安装依赖 pip install requests
假设我们有一个简单的测试脚本test_script.py,内容如下:
# 测试脚本,导入requests库并发送请求
import requests
def main():
# 发送GET请求到测试地址
response = requests.get("http://ipipp.com/test")
print(f"请求状态码:{response.status_code}")
if __name__ == "__main__":
main()
运行该脚本的命令和全局环境运行方式一致,直接执行:
# 运行Python脚本 python test_script.py
此时脚本会使用虚拟环境中的Python解释器和已安装的依赖包执行,不会出现依赖缺失的问题。
退出虚拟环境
当开发工作完成后,可以执行以下命令退出虚拟环境,终端提示符会恢复原来的状态:
# 退出虚拟环境 deactivate
常见问题排查
在操作过程中可能会遇到一些常见问题,以下是对应的解决方法:
| 问题现象 | 原因分析 | 解决方法 |
|---|---|---|
执行source myenv/bin/activate提示文件不存在 | 虚拟环境路径错误或者未成功创建虚拟环境 | 检查当前目录是否存在myenv文件夹,重新执行创建虚拟环境的命令 |
激活环境后执行python还是系统全局的Python版本 | 激活命令未正确执行,或者虚拟环境创建失败 | 重新执行激活命令,检查终端提示符是否出现虚拟环境名称 |
| 运行脚本提示模块不存在 | 依赖包未安装在当前虚拟环境中 | 确认已经激活虚拟环境,重新执行pip install 包名安装依赖 |
注意:虚拟环境是和项目目录绑定的,如果你打开新的终端窗口,需要重新进入项目目录并执行激活命令,虚拟环境才会生效。
Python虚拟环境Linux系统venv脚本运行环境激活修改时间:2026-07-19 03:24:21