【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虚拟环境中支持的模块不同

相关推荐
小鸡吃米…2 小时前
Python - 扩展
开发语言·python
天呐草莓2 小时前
支持向量机(SVM)
人工智能·python·算法·机器学习·支持向量机·数据挖掘·数据分析
保持低旋律节奏2 小时前
linux——进程
linux·运维·服务器
wepe122 小时前
FlyEnv---phpstudy平替
java·python·mysql·nginx·php
proware2 小时前
3588 cma heap应用示例之图像采集
linux·cma·dma buf
Pyeako2 小时前
机器学习--决策树
人工智能·python·决策树·机器学习·分类·pycharm·回归树
羊村懒哥2 小时前
告别命令行查日志!CentOS 安装 ELK 实现可视化监控
linux·elk·centos
txzz88882 小时前
CentOS-Stream-10 YUM本地仓配置
linux·运维·centos·yum·yum本地仓配置
橙 子_2 小时前
在 Amazon Bedrock 中推出 Claude Sonnet 4.5:Anthropic 最智能的模型,最适合编码和复杂代理
人工智能·python·云原生·html