【Linux系统】ubuntu - python 虚拟环境搭建|使用|与系统环境的区别

python 虚拟环境

主要作用

  1. 项目隔离

不同等项目需要不同的版本: 如项目A 需Xxx 2.1 , 项目B 需要Xxx3.1

  • 整个虚拟环境只能安装一个版本,但是虚拟环境可以各安装各的
  1. 依赖管理

个版本切换使用时互不干扰

  1. 环境的一致性(与docker类似)

确保开发环境、测试环境与生产环境都使用相同版本的包

  1. 权限管理

不需要sudo 权限就可以安装包

  1. 快速清理

删除虚拟环境目录即可以完全清理干净

python虚拟环境创建

bash 复制代码
# 创建项目目录
mkdir xx-project
cd xx-project

# 创建虚拟环境
python3 -m venv venv

# 激活虚拟环境
source venv/bin/activate # 在xx-project项目路径下

虚拟环境与项目代码的关系

  • 在各自项目下创建虚拟目录,创建虚拟环境

虚拟python环境的使用

  • 可以使用完整路径执行
bash 复制代码
# 不一定!你可以:
# 1. 使用完整路径执行
./venv/bin/python script.py

# 2. 在脚本开头指定解释器
#!/path/to/venv/bin/python

# 3. IDE通常会自动处理虚拟环境

如:在项目路径下使用虚拟环境python3的绝对路径运行

多虚拟环境的管理

bash 复制代码
# 使用工具管理多个环境(推荐)
pip install virtualenvwrapper

# 配置
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

# 使用
mkvirtualenv env1      # 创建
workon env1            # 切换
deactivate             # 退出
rmvirtualenv env1      # 删除

python虚拟环境与系统环境的对比

python3 的可执行文件路径不同

支持的Python模块也不同

不同python虚拟环境中支持的模块不同

相关推荐
进击的松鼠1 天前
LangChain 实战 | 快速搭建 Python 开发环境
python·langchain·llm
weixin_462446231 天前
K8s 集群部署基础:Linux 三节点 SSH 互信(免密登录)配置指南
linux·kubernetes·ssh
小北方城市网1 天前
第1课:架构设计核心认知|从0建立架构思维(架构系列入门课)
大数据·网络·数据结构·python·架构·数据库架构
我的offer在哪里1 天前
Hugging Face:让大模型触手可及的魔法工厂
人工智能·python·语言模型·开源·ai编程
Hard but lovely1 天前
Linux: 线程同步-- 基于条件变量 &&生产消费模型
linux·开发语言·c++
m0_738120721 天前
应急响应——知攻善防靶场Linux-1详细应急过程
linux·运维·服务器·网络·web安全·ssh
Guistar~~1 天前
【Linux驱动开发IMX6ULL】WS73 驱动移植的详细教程基于USB协议--WIFi网卡、蓝牙BLE、星闪SLE
linux·驱动开发
汤姆yu1 天前
基于python大数据的协同过滤音乐推荐系统
大数据·开发语言·python
爱学习的小道长1 天前
Python Emoji库的使用教程
开发语言·python
Data_agent1 天前
Cssbuy 模式淘宝 / 1688 代购系统南美市场搭建指南
大数据·python