更多课程 选择中心


Python培训

400-111-8989

Python - virtualenv创建独立的Python开发环境

  • 发布: 运维菜
  • 来源: 运维菜
  • 时间:2017-12-06 16:51

前言

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,进行开发,可以使开发环境更简介,少点坑。

欢迎关注我的大鱼号:运维菜

本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:1个掷硬币问题,4个Python解法
下一篇:python教程 | Python 15分钟入门

Python IDE推荐7个你可能会错过的Python IDE

Python面试题之Python中爬虫框架或模块的区别

2021年Python面试题及答案汇总详解

python数据分析,你需要这些工具

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省