


Python培训
400-996-5531
前言
在Python开发过程中,我们需要安装各种开发包,又不想把原生的Python环境弄得乱七八糟。因此,我们通常会使用virtualenv来创建独立的开发环境。
解决一些问题
解决问题1:如果我们有多个项目使用同一台服务器,一个需要Django1.4,一个需要Django1.11,如果我们直接使用默认Python安装路径就会出现不兼容的情况,一个Python环境里面只能安装一个版本的Django。
解决问题2:如果有一台机器,管理员没有给我们root权限,而Python安装在系统路径,开发者的用户没有权限进行安装依赖包,出现权限不足的情况。
...
安装virtualenv
使用pip就可以直接安装virtualenv,如果是系统自带的Python版本一般也有对应的包。
如果是root用户,可以直接执行:
pip install virtualenv
如果是普通用户可能需要使用sudo权限进行安装:
sudo pip install virtualenv
virtualenv使用方法
切换到当前用户有权限的目录,创建Python环境:
virtualenv env1
创建成功直接,进入env1目录可以看到下面几个目录:
lib目录存放所有安装的python库,一般是放在这个目录中的lib/pythonx.x/site-packages/下
bin目录主要是可执行文件,包括Python解释器bin/python
include目录主要是Python开发包里面的c语言头文件。
如果在命令行中运行virtualenv --system-site-packages env1, 会继承/usr/lib/python3.6/site-packages下的所有库, 最新版本virtualenv把访问全局site-packages作为默认行为。
激活创建的virtualenv环境
在Linux下直接source加载一个activate目录,如果是windows,在cmd界面也可以输入active路径就可以加载到
source env1/bin/activate
上面两个图分别为Linux和windows的截图,可以看到,在命令前前面加一个环境的名称。看到这个提示我们就已经激活了virtualenv环境了。可以使用pip查看一下当前库
pip list
安装一个Django,可以看到所有的依赖库。
因此在迁移环境的时候我们可以完整的安装我们的依赖包,减少不必要的麻烦。
pip freeze > requirement.txt #生成包含依赖包信息requirement.txt文件
pip install -r requirement.txt #根据requirement.txt安装对应版本的包
创建指定版本的virtualenv
如果系统上面有多个Python版本,virtualenv会找默认路径下的Python,如何指定版本呢?可以使用-p参数
创建Python2.7的环境:
virtualenv -p /usr/bin/python2.7 ENV2.7
创建Python3.6的环境:
virtualenv -p /usr/bin/python3.6 ENV3.6
总结
无论在Linux、windows或者Mac下开发Python,建议都是创建独立的virtualenv,进行开发,可以使开发环境更简介,少点坑。
欢迎关注我的大鱼号:运维菜
本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有