在这一篇文章中,主要针对以下问题展开叙述:

  1. 在机器上拥有不同的python版本,怎么去方便的切换?

  2. 安装python库的基本方法有哪些?

  3. 问题待续...

问题一

关于第一个问题,在运用python的过程中,我经历了如下阶段:直接安装python->用anaconda安装->两种方法混合着来,结果导致了我出现了一个很严重的问题:不知道安装了神马?不知道安装到哪?不知道python引用的是哪里的包?反正很懵比,最后决定fix掉这个问题,尽量打消自己的疑惑。

有这么一个例子:在跑相关深度学习模型时,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip3安装到Python3.5的site-packages目录下,系统安装的Python2只有一个版本:2.7,同理所有的包都会被pip安装到python2.7的site-packages目录下,关于python3目录下的dist-packages,区别在于 dist-package/site-package 的解释 。如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境:enter image description here

  1. pip3 install virtualenv

  2. 然后,假定我们要开发一个新的项目,需要一套独立的Python运行环境,创建一个project文件夹

  3. virtualenv --no-site-packages [project name] ,命令virtualenv就可以创建一个独立的Python运行环境,我们还加上了参数--no-site-packages,这样,已经安装到系统Python环境中的所有第三方包都不会复制过来,这样,我们就得到了一个不带任何第三方包的“干净”的Python运行环境

  4. source [project name]/bin/activate enter image description here

    注意pip pip3 安装的是同一个目录,而sudo pip安装的是dist目录。

  5. 退出当前的环境,使用deactivate命令

    问题二

安装python除了常见的pip安装,easy install 安装之外,还有如下其它的方法:

  1. Python很多第三方库都是开源的,我们可以从GitHub或PyPI上下载源码,解压后,进入文件夹,找到setup.py文件,输入命令安装:python setup.py install

  2. Anaconda是一个用于科学计算的Python发行版(安装cuda,cudnn这些深度学习计算框架时,最好不用conda,做一些python机器学习方面的数据分析应用可以尝试conda)支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda安装包和pip类似:conda install requests

  3. whl文件安装,pip install [packageName].whl