Python 虚拟环境搭建

背景

前段时间在python2.7的环境下做一些开发,发现对于中文的支持还是比较弱的。经常要在业务层关心如何编码和解码。而且,在文本中输入中文注释时,如果没有在文件头按照官方定义的规则给出一段注释时,会产生编码错误。

#!/usr/bin/python
#coding=utf8

而python 3.x 系列的是没有这个问题的。而且python 3.5之后,对于数据处理,提高开发效率方面又做出了极大的改进。因此想要尝鲜。

那么,如果我替换掉本机的python之后,如果需要回过头去维护以前python2.7的项目该怎么办呢?好像又得更改对应的python。哪怕仅仅只是更改 软连接(在mac osx & linux上)。

因此,想要更好的利用python的virtualenv,将python从python自身的版本开始做环境隔离。保证一个项目的依赖完全不影响另外一个项目。

依赖工具库

  • pip
    pip是一个库管理工具,取代了easy_install。没什么理由,可能仅仅是因为pip输入的字母更少而已。

  • virtualenv
    virtualenv 是python开发中用来隔离环境的一个重要工具。至于方便操作的virtualenvwrapper, autoenv等等,看个人喜好进行选择。本人暂时用不到,基础的virtualenv已经足够满足了。

安装方法也很简单。

sudo pip install virtualenv

操作步骤

准备步骤

  1. python 安装
    既然是python环境搭建。那么python的库是必不可少的。一般在osx以及linux的发行版中,都会预装python2。细分版本可能有所区别,有些是 python2.7, 而老一点的可能还是 python2.4。
    (个人建议如果不是python2.7的先升级到python2.7)
    有了python2,那么接下来就是安装python3了。这个没什么好说的,直接去官网下载对应的安装包进行安装即可。当然,追求Geek一点的,可以编译安装。关于编译安装中会遇到的诸如openssl等问题,此处不再展开。

  2. pip 安装
    当然,如果不想安装pip,认为easy_install也够了的。可以不用安装pip。

sudo easy_install pip
  1. virtualenv 安装
    安装了pip之后,输入命令sudo pip install virtualenv进行安装。此处切记,如果virtualenv在python3安装之前安装的,需要进行一次sudo pip install virtualenv --upgrade 否则因为没有python3对应的依赖库,会发生"__convert[] error" 此类的错误。

开始搭建

  1. 建立工程目录
virtualenv -p [python版本] proj

此处proj为工程目录的名称,-p 为选择需要的python版本。
相当简单。使用命令 source bin/activate即可进入虚拟环境了,在此处安装任何的依赖包,都不会影响全局环境。当然,全局环境的包也不能被此处的虚拟环境使用。

Python 虚拟环境搭建_第1张图片
python3 虚拟环境

  1. 建立依赖包的文件。
    可以手动新建一个文件,用来管理库的依赖。方便在其他环境中一键部署。
    此处使用pip的命令完成 pip freeze > requirements.txt
    而需要安装依赖包时,可以在requirememts中输入对应的包名,版本号。然后执行命令 pip install -r requirements.txt

    Python 虚拟环境搭建_第2张图片
    依赖库

    Python 虚拟环境搭建_第3张图片
    安装过程

  2. 注意点
    很多python2中的依赖库是没有对应的python3的依赖库的,所以此处需要进行抉择。在项目开始之初,需要想清楚需要依赖哪些库,从而选择是使用python3 还是 python2。

你可能感兴趣的:(Python 虚拟环境搭建)