Python最佳实践之virtualenv

28 sec read

virtualenv是一个能把你的应用隔离在一个虚拟环境中的工具。 一个虚拟环境是一个包含了你的应用依赖的软件的文件夹。简单的描述virtualenv的作用:

  • virtualenv可以让你给不同的项目指定同样的依赖包的不同版本。
  • virtualenv可以让你方便的在多台服务器上部署相同的以来环境。

virtualenv的安装非常简单,只需 pip install virtualenv 即可。

一、如何使用virtualenv构建独立的虚拟环境?

1、virtualenv的安装

2、创建虚拟环境

首先到使用命令行移动到想要存在虚拟环境的文件夹,然后执行:

其中myenv是存在所有虚拟环境的文件夹,在执行完命令后就myenv的文件夹下就生成了一个venv的文件夹,这个文件夹即为本次生成的虚拟环境。

3、激活虚拟环境

Linux环境下可以通过如下命令激活:

而Windows下的激活命令是:

你也许注意到了,你的shell提示符发生了改变。 virtualenv在它前面添加了当前被激活的virtual environment,所以你能意识到你并不存在于全局系统环境中。

当一个virtual environment被激活后,在虚拟环境下使用pip安装的包都会安装到virtual environment中而不是全局系统环境。

如果你想离开virtual environment,在命令行中执行deactivate即可:

二、如何迁移virtualenv构建独立的虚拟环境?

比如说想把开发环境迁移到线上环境,方法非常的简单:

1、生成目前所在虚拟环境的所有依赖包信息

同时会在刚在命令行所在的目录下生成一个requirements.txt文件,文件中的内容和上述返回的内容一致。

2、在新的服务器的虚拟环境中批量安装requirements.txt的包。

随着项目增长,你可能会发现pip freeze中列出的每一个包并不再是运行应用所必须的了。 也许有些包只是在开发时用得上。pip freeze没有判断力;它只是列出了当前安装的所有的包。所以你只能手动记录依赖的变动了。 你可以把运行应用所需的包和开发应用所需的包分别放入对应的require_run.txt和require_dev.txt。

注意:在freeze或install依赖包时,确保你正为于正确的virtual environment之中。

三、使用virtualenvwrapper更加方便的管理虚拟环境

Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境,它可以做:

  • 将所有虚拟环境整合在一个目录下
  • 管理(新增,删除,复制)虚拟环境
  • 切换虚拟环境

在安装Virtaulenvwrapper之前,首先要确保已经安装了virtualenv。

Linux下安装命令:

安装完成后并不能直接使用virtualenvwrapper,还需要进一步进行环境设置:

创建目录用来存放虚拟环境: mkdir $HOME/Envs

编辑 ~/.bashrc,在文件最后追加如下内容:

运行: $ source ~/.bashrc 保存配置信息。此时virtualenvwrapper就可以使用了。virtualenvwrapper的基本使用方式:

  • 列出虚拟环境列表: workon 或者 lsvirtualenv
  • 新建虚拟环境:  mkvirtualenv [虚拟环境名称]
  • 启动/切换虚拟环境: workon [虚拟环境名称]
  • 删除虚拟环境: rmvirtualenv [虚拟环境名称]
  • 离开虚拟环境: deactivate

Windows下安装命令:

pip install virtualenvwrapper-win

参考链接:

打赏作者
微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

北大开源分词工具pkuseg

pkuseg简介 pkuseg是由北京大学语言计算与机器学习研究组研制推出的一套全新的中文分词工具包。pkus
1 min read

使用Python进行中文繁简转换

中文繁体、简体的差异,在NPL中类似英文中的大小写,但又比大小写更为复杂,比如同样为繁体字,大陆、香港和台湾又
1 min read

Python因子分解库:fastFM

FastFM简介 FastFM的主要特点是将是将因子分解封装成scikit-learn API接口,核心代码使
2 min read

2 Replies to “Python最佳实践之virtualenv”

  1. python3.3以上版本集成了pyvenv,可以不用安装virtualenv了

发表评论

电子邮件地址不会被公开。 必填项已用*标注