开始阅读本书之前 Before you begin
本部分包括读者在开始阅读本书之前所需要了解的信息。如有信息更新,我们会将其放在http://www.deitel.com上。
字体和命名规范
本书以特殊字体显示Python代码、命令以及文件和文件夹名称,用楷体表示强调内容,用粗体表示关键术语。
获取代码示例
在http://www.deitel.com网页上,点击Download Examples链接可以将examples.zip文件下载到本地计算机,其中包含本书的所有代码示例。下载完成后,在本地系统上找到examples.zip文件,将其中的examples
文件夹提取到用户账户的Documents
文件夹下:
- 在Windows系统中是
C:\Users\
用户账户名\Documents\examples
- 在macOS或Linux系统中是
~/Documents/examples
大多数操作系统有内置的提取工具,读者也可以使用7-Zip(www.7-zip.org)或WinZip(www.winzip.com)等压缩工具。
examples
文件夹的结构
在本书中,读者将以下面三种形式执行示例(1.5节会给出具体操作演示):
- 在IPython交互式环境中执行的单独代码段。
- 完整的应用程序,即脚本。
- Jupyter Notebook—一种基于Web浏览器的交互式便捷编程环境。在该环境中读者可以编写、执行代码,还可以将代码与文本、图像和视频混合在一起。
examples
文件夹包含多个子文件夹,每个子文件夹对应一章。子文件夹命名为ch##
,##
是两位数字的章编号01
~16
,如ch01
。除了第13章、第15章和第16章外,其他章的文件夹包含以下内容:
snippets_ipynb
—包含该章Jupyter Notebook文件的文件夹。snippets_py
—包含该章Python源代码文件的文件夹。各代码段之间以一个空行分隔。读者可以将这些代码段复制粘贴到IPython或Jupyter Notebook中运行。- 脚本文件及其支持文件。
第13章包含一个应用程序。ch15
和ch16
文件夹中读者所需文件的位置分别在第15章和第16章进行了说明。
安装Anaconda
本书使用易于安装的Anaconda Python发行版,其中包含了执行示例所需的绝大多数内容,具体如下:
- IPython解释器。
- 本书所使用的大多数Python库和数据科学库。
- Jupyter Notebook本地服务器,以便读者可以下载并执行我们所提供的
notebook
文件。 - Spyder集成开发环境(Integrated Development Environment,IDE)等其他软件包,本书仅使用到IPython和Jupyter Notebook。
从https://www.anaconda.com/download/可以下载Windows、macOS或Linux的Python 3.x Anaconda安装程序。下载完成后,运行安装程序并根据屏幕上的提示完成操作。注意安装完成后不要移动安装好的文件的位置,以确保Anaconda能够正常运行。
更新Anaconda
按下面的方式在本地系统上打开一个命令行窗口:
- 对于macOS,从Applications文件夹的Utilities子文件夹中打开Terminal。
- 对于Windows,从开始菜单中打开Anaconda Prompt。注意,如果是为了更新Anaconda或安装新的软件包,则需要右键单击Anaconda Prompt,然后选中More > Run as administrator。(如果在开始菜单中无法找到Anaconda Prompt,可在屏幕底部的Type here to search处进行搜索。)
- 对于Linux,打开系统的Terminal或shell(不同Linux发行版会有所不同)。
在本地系统的命令行窗口中,执行下面的命令可以将Anaconda已安装的包更新到最新版本:
1. conda update conda
2. conda update --all
包管理器
上面使用的conda
命令会调用conda
包管理器,这是本书所使用的两个重要的Python包管理器之一。本书所使用的另一个包管理器是pip
。软件包包含了安装特定Python库或工具所需的文件。在本书中,优先使用conda
安装软件包,只有在无法使用conda
安装软件包时,才会使用pip
。有些人喜欢使用pip
,因为目前它支持更多软件包。读者如果在使用conda
安装软件包时遇到问题,请尝试使用pip
代替。
安装Prospector静态代码分析工具
读者可能需要使用Prospector分析工具来分析Python代码,该工具会检查代码中的常见错误并帮助读者进行改进。要安装Prospector及其使用的Python库,请在命令行窗口运行以下命令:
pip install prospector
安装jupyter-matplotlib
本书使用名为Matplotlib的可视化库实现了一些动画。要在Jupyter Notebook中使用它们,必须安装一个名为ipympl
的工具。在先前打开的Terminal、Anaconda Prompt或shell中,依次执行以下命令[1]:
安装其他包
Anaconda提供了大约300种流行的Python库和数据科学库,如NumPy、Matplotlib、pandas、Regex、BeautifulSoup、requests、Bokeh、SciPy、SciKit-Learn、Seaborn、Spacy、sqlite、statsmodels等。除此之外,本书示例代码对其他软件包的需要很少,我们将在必要时提供相关安装说明。当读者在实际操作中需要安装新的软件包时,可以参考软件包的说明文档完成安装。
获得一个Twitter开发者账号
如果读者要运行本书第12章及后续章节中任何基于Twitter的示例,请先申请一个Twitter开发者账号。Twitter现在要求先注册才能访问其API。要申请Twitter开发者账号,请在https://developer.twitter.com/en/apply-for-access上填写信息并提交申请。
Twitter会审核每个申请。在撰写本书时,个人开发者账号注册申请会立即通过审批,公司账号注册申请则需要几天到几周的时间才能得到审批,且有可能审批不通过。
部分章节的学习需要连接互联网
使用本书时,读者需要连接互联网才能安装各种附加的Python库。在部分章节中,读者需要注册云服务账号,使用其免费服务,其中某些服务需要使用信用卡验证用户的身份。在一些情况下,读者会遇到非免费的服务。此时,读者需要利用供应商提供的货币信用额度,从而免费试用它们的服务。注意:设置后,某些云服务会产生成本。因此,当读者使用此类服务完成案例研究时,请确保立即删除分配给你的资源。
程序输出的细微差异
在执行示例时,读者可能会注意到书中给出的结果与自己的运行结果之间存在一些差异,原因如下:
- 不同操作系统计算浮点数(如-123.45、7.5或0.0236937)的方式不同,因此输出结果可能有细微变化,尤其是右边距离小数点很远的那些数字。
- 本书在单独窗口中显示输出结果时,会裁剪窗口以删除其边界。
[1] https://github.com/matplotlib/jupyter-matplotlib.