1.pyhton3的虚拟环境virtualenv和virtualenvwrapper详解:
虚拟环境应用的背景:

作用:可以生成了n多个虚拟环境,实现解释器的模块分离,防止后期的模块宅难

python3解释器的虚拟环境的含义是? (多个虚拟环境时独立隔离的)

| 在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题; |
| 亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难。 |
| 此时,我们需要对于不同的工程使用不同的虚拟环境来保持开发环境以及宿主环境的清洁。 |
| 这里,就要隆重介绍 virtualenv,一个可以帮助我们管理不同 Python 环境的绝好工具。 |
| virtualenv 可以在系统中建立多个不同并且相互不干扰的虚拟环境。 |
一、linux下安装
| 1.指定清华源下载pip的包 |
| pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv |
| |
| pip3 install --upgrade pip |
| |

| 2.通过命令行创建虚拟环境 |
| |
| |
| virtualenv --python=python3 venv1 (执行这个是最新的) --python参数可选择 python解释器的版本(python2 or python3) |
| ps: |
| --no-site-packages 表示不要任何的第三方模块,pip3安装的模块都会放在这里(/opt/python365/lib/python3.6/site-packages) |
| --python=python3 指定venv虚拟解释器,以哪个解释器为准 |
| |

| 3.需要激活一下虚拟环境(本质是把venv1的环境变量加到$PATH最前面) |
| source /opt/venv1/bin/activate |
| |

| 4.明确虚拟环境下的venv1的解释器的干净隔离的 |
| [root@VM-0-6-centos bin] |
| (venv1) [root@VM-0-6-centos bin] |
| (venv1) [root@VM-0-6-centos bin] |
| (venv1) [root@VM-0-6-centos bin] |
| /opt/venv1/bin/python3 |
| (venv1) [root@VM-0-6-centos bin] |
| /opt/venv1/bin/pip3 |
| (venv1) [root@VM-0-6-centos bin] |
| Package Version |
| ---------- ------- |
| pip 20.1.1 |
| setuptools 47.1.1 |
| wheel 0.34.2 |
| 5.在venv1中安装django1,默认会安装到venv1中的 |
| pip3 install -i https://pypi.douban.com/simple django==1.11.9 |
| 安装好后启动django 项目就可以了 |

| 6.在开一个窗口运行django2.0版本 |
| virtualenv --python=python3 venv2 |
| |
| [root@VM-0-6-centos opt] |
| (venv2) [root@VM-0-6-centos opt] |
| (venv2) [root@VM-0-6-centos opt] |
| -bash: /opt/venv2/bin:/opt/python365/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin: No such file or directory |
| |
| pip3 install -i https://pypi.douban.com/simple django==2.0.1 |
| |
| 7.退出虚拟环境 (会将激活时加入的path删除) |
| deactivate |
二、保证开发环境,生产环境python模块的一致性:


在这里看一下
在windows上开发一个项目,pip3安装了很多的模块,最终项目才能运行,比如crm代码。
代码上传到服务器,是一个空的环境,还得在部署一遍。
| 土方法:运行代码, 查看报错,一个模块一个个安装 |
| 不那么土的办法: |
| pip3 freeze > requirements.txt |
| 1.在windows的cmd命令中通过此命令导出。 |
| 2.把此文件发送给linux服务器 |
| 在linux机器上,安装此文件即可,自动读取文件中的每一行的模块信息,自动安装 |
| pip3 install -i htpps://pypi.douban.com/simple -r requirements.txt |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)