1.4 安装和设置

由于人们用Python所做的事情不同,所以没有一个普适的Python及其插件包的安装方案。由于许多读者的Python科学计算环境都不能完全满足本书的需要,所以接下来我将详细介绍各个操作系统上的安装方法。我推荐免费的Anaconda安装包。写作本书时,Anaconda提供Python 2.7和3.6两个版本,以后可能发生变化。本书使用的是Python 3.6,因此推荐选择Python 3.6或更高版本。

Windows

要在Windows上运行,先下载Anaconda安装包。推荐跟随Anaconda下载页面的Windows安装指导,安装指导在写作本书和读者看到此文的的这段时间内可能发生变化。

现在,来确认设置是否正确。打开命令行窗口(cmd.exe),输入python以打开Python解释器。可以看到类似下面的Anaconda版本的输出:

  1. C:\Users\wesm>python
  2. Python 3.5.2 |Anaconda 4.1.1 (64-bit)| (default, Jul 5 2016, 11:41:13)
  3. [MSC v.1900 64 bit (AMD64)] on win32
  4. >>>

要退出shell,按Ctrl-D(Linux或macOS上),Ctrl-Z(Windows上),或输入命令exit(),再按Enter。

Apple (OS X, macOS)

下载OS X Anaconda安装包,它的名字类似Anaconda3-4.1.0-MacOSX-x86_64.pkg。双击.pkg文件,运行安装包。安装包运行时,会自动将Anaconda执行路径添加到.bash_profile文件,它位于/Users/$USER/.bash_profile

为了确认成功,在系统shell打开IPython:

  1. $ ipython

要退出shell,按Ctrl-D,或输入命令exit(),再按Enter。

GNU/Linux

Linux版本很多,这里给出Debian、Ubantu、CentOS和Fedora的安装方法。安装包是一个脚本文件,必须在shell中运行。取决于系统是32位还是64位,要么选择x86 (32位)或x86_64 (64位)安装包。随后你会得到一个文件,名字类似于Anaconda3-4.1.0-Linux-x86_64.sh。用bash进行安装:

  1. $ bash Anaconda3-4.1.0-Linux-x86_64.sh

笔记:某些Linux版本在包管理器中有满足需求的Python包,只需用类似apt的工具安装就行。这里讲的用Anaconda安装,适用于不同的Linux安装包,也很容易将包升级到最新版本。

接受许可之后,会向你询问在哪里放置Anaconda的文件。我推荐将文件安装到默认的home目录,例如/home/$USER/anaconda

Anaconda安装包可能会询问你是否将bin/目录添加到$PATH变量。如果在安装之后有任何问题,你可以修改文件.bashrc(或.zshrc,如果使用的是zsh shell)为类似以下的内容:

  1. export PATH=/home/$USER/anaconda/bin:$PATH

做完之后,你可以开启一个新窗口,或再次用~/.bashrc执行.bashrc

安装或升级Python包

在你阅读本书的时候,你可能想安装另外的不在Anaconda中的Python包。通常,可以用以下命令安装:

  1. conda install package_name

如果这个命令不行,也可以用pip包管理工具:

  1. pip install package_name

你可以用conda update命令升级包:

  1. conda update package_name

pip可以用--upgrade升级:

  1. pip install --upgrade package_name

本书中,你有许多机会尝试这些命令。

注意:当你使用conda和pip二者安装包时,千万不要用pip升级conda的包,这样会导致环境发生问题。当使用Anaconda或Miniconda时,最好首先使用conda进行升级。

Python 2 和 Python 3

第一版的Python 3.x出现于2008年。它有一系列的变化,与之前的Python 2.x代码有不兼容的地方。因为从1991年Python出现算起,已经过了17年,Python 3 的出现被视为吸取一些列教训的更优结果。

2012年,因为许多包还没有完全支持Python 3,许多科学和数据分析社区还是在使用Python 2.x。因此,本书第一版使用的是Python 2.7。现在,用户可以在Python 2.x和Python 3.x间自由选择,二者都有良好的支持。

但是,Python 2.x在2020年就会到期(包括重要的安全补丁),因此再用Python 2.7就不是好的选择了。因此,本书使用了Python 3.6,这一广泛使用、支持良好的稳定版本。我们已经称Python 2.x为“遗留版本”,简称Python 3.x为“Python”。我建议你也是如此。

本书基于Python 3.6。你的Python版本也许高于3.6,但是示例代码应该是向前兼容的。一些示例代码可能在Python 2.7上有所不同,或完全不兼容。

集成开发环境(IDEs)和文本编辑器

当被问到我的标准开发环境,我几乎总是回答“IPython加文本编辑器”。我通常在编程时,反复在IPython或Jupyter notebooks中测试和调试每条代码。也可以交互式操作数据,和可视化验证数据操作中某一特殊集合。在shell中使用pandas和NumPy也很容易。

但是,当创建软件时,一些用户可能更想使用特点更为丰富的IDE,而不仅仅是原始的Emacs或Vim的文本编辑器。以下是一些IDE:

  • PyDev(免费),基于Eclipse平台的IDE;
  • JetBrains的PyCharm(商业用户需要订阅,开源开发者免费);
  • Visual Studio(Windows用户)的Python Tools;
  • Spyder(免费),Anaconda附带的IDE;
  • Komodo IDE(商业)。

因为Python的流行,大多数文本编辑器,比如Atom和Sublime Text 3,对Python的支持也非常好。