Python从入门到精通(精粹版)

978-7-115-59899-8
作者: 李艳萍
译者:
编辑: 张天怡
分类: Python

图书目录:

详情

本书以零基础读者为对象,用范例引导读者学习,深入浅出地介绍了Python的相关知识和实战技能。 本书从Python基础入手,介绍了Python的开发环境、各种数据类型的操作方法、流程控制、函数等Python内核技术,以及使用Python处理文件、处理错误与异常等各种应用,最后列举了Python在重要领域的项目实战,内容全面且深入。 本书提供与内容同步的教学录像。此外,本书还赠送大量相关学习资料,以便读者扩展学习。 本书适合任何想学习Python的读者,无论读者是否从事计算机相关行业、是否接触过Python,均可通过本书快速掌握Python的开发方法和技巧。

图书摘要

版权信息

书名:Python从入门到精通(精粹版)

ISBN:978-7-115-59899-8

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。


版  权

编  著 李艳萍

责任编辑 张天怡

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315

内 容 提 要

本书以零基础读者为对象,用范例引导读者学习,深入浅出地介绍了Python的相关知识和实战技能。

本书从Python基础入手,介绍了Python的开发环境、各种数据类型的操作方法、流程控制、函数等Python内核技术,以及使用Python处理文件、处理错误与异常等各种应用,最后列举了Python在重要领域的项目实战,内容全面且深入。

本书提供与内容同步的教学录像。此外,本书还赠送大量相关学习资料,以便读者扩展学习。

本书适合任何想学习Python的读者,无论读者是否从事计算机相关行业、是否接触过Python,均可通过本书快速掌握Python的开发方法和技巧。

前  言

《Python从入门到精通(精粹版)》是专为初学者量身打造的一本Python编程学习用书,由计算机图书策划机构“龙马高新教育”精心策划而成。

本书主要面向Python初学者和爱好者,旨在帮助读者掌握Python基础知识、了解开发技巧并积累一定的项目实战经验。

为什么要编写这样一本书

荀子曰:不闻不若闻之,闻之不若见之,见之不若知之,知之不若行之。

实践对学习来说非常重要。本书立足于实战,从项目开发的实际需求入手,将理论知识与实际应用相结合。本书的目标是让初学者能够快速成长为初级程序员,并拥有一定的项目开发经验,从而在职场中拥有“高起点”。

本书特色

零基础、入门级的讲解

无论读者是否从事计算机相关行业、是否接触过Python、是否使用Python开发过项目,都能从本书中获益。

实用、专业的范例和项目

本书结合实际工作中的范例,逐一讲解Python的各种知识和技术;最后还以讲解实际开发项目来总结本书所讲内容,帮助读者在实战中掌握知识,轻松拥有项目经验。

便于读者随时检测学习成果

每章首页都列出了“本章要点”,以便读者明确学习方向。某些章最后的“实战演练”则根据所在章的知识点精心设计而成,读者可以进行自我检测、巩固所学知识。

细致入微、贴心提示

本书在讲解过程中设计了“提示”“注意”等板块,帮助读者在学习过程中更清楚地理解基本概念、掌握相关操作,并轻松学会实战技巧。

写给读者的建议

本书不仅适用于零基础的读者,还适用于已有语言基础的读者。本书涉及的知识面广泛,囊括多种热门应用的相关知识,因此,在部分章节会出现一些较难的知识点,但零基础的读者无须担心,它们都有相应的温馨提示来帮助学习和理解。

随书资源

全程同步教学录像

教学录像涵盖本书重要知识点,详细讲解每个范例及项目的开发过程与关键点,能帮助读者更轻松地掌握书中介绍的Python程序设计知识。扫描下方二维码即可观看教学录像,也可通过QQ群(644852861)获取图书配套资源。

读者对象

没有任何Python基础的初学者。

已掌握Python的入门知识,希望进一步学习核心技术的人员。

具备一定的Python开发能力,缺乏Python实战经验的人员。

大专院校及培训学校的老师和学生。

创作团队

本书由郑州升达经贸管理学院的李艳萍编著。在本书的编写过程中,编者竭尽所能地将较好的讲解呈现给读者,但书中也难免有疏漏和不妥之处,敬请广大读者不吝指正。若读者在阅读本书时遇到困难或疑问,或有任何建议,可发送邮件至zhangtianyi@ptpress.com.cn。

编者

2023年3月

第0章 认识Python——打开Python之门

本章为读者介绍Python是什么、Python的发展历程、Python的优点和缺点、Python的应用领域和前景、Python的学习路线等。

本章要点(已掌握的在方框中打钩)

Python是什么

Python的发展历程

Python的优点和缺点

Python的应用领域和前景

Python的学习路线

0.1 Python是什么

Python是一门计算机程序设计语言,可应用于常规软件开发、网页开发、网络爬虫、数据分析和人工智能等方面。

Python的创始人为吉多•范罗苏姆(Guido van Rossum)。2010年,Python被TIOBE编程语言排行榜评为年度语言。Python受到Modula-3语言的影响,且Python具有易读、可扩展、简洁等特点,被一些知名大学当作主要编程语言教授给学生。业内人士一般称Python为高级动态编程语言,它可以用于大规模软件开发。资料显示,吉多在邮件列表上宣布2020年1月1日起终止对Python 2.7的支持,将其交给商业供应商负责,目前主流的版本是Python 3。

0.2 Python的发展历程

0.1节讲解了Python是什么,下面讲解Python的发展历程。

Python之父——荷兰人吉多,于1982年从荷兰阿姆斯特丹大学取得数学和计算机科学硕士学位。

20世纪80年代中期,吉多还在位于阿姆斯特丹的荷兰国家数学与计算机科学研究中心(Centrum Wiskunde & Informatica,CWI)参与ABC语言的相关工作。ABC语言是为编程初学者打造的。ABC语言带给吉多很大启发,Python从ABC语言中继承了很多东西,比如字符串、列表(List)和字节数列都支持索引(Index)、切片排序和拼接操作等。

在CWI工作一段时间后,吉多构思并开发了一门致力于解决问题的编程语言,他觉得现有的编程语言对非计算机专业的人十分不友好。于是,1989年12月,为了打发无聊的圣诞假期,吉多开始写Python的第一个版本。值得一提的是“Python”这个名字的由来,Python有蟒蛇的意思,但吉多起的这个名字和蟒蛇完全没有关系。吉多在实现Python期间,阅读了Monty Python's Flying Circus的剧本,这是一部创作于20世纪70年代的喜剧。吉多认为他需要一个简短、独特且略显神秘的名字,因此他决定将该语言称为Python。

1991年,Python的第一个解释器诞生了。它是由C语言实现的,有很多语法来自C语言,又受到ABC语言的影响。它有很多来自ABC语言的语法,直到今天还很有争议,强制缩进就是其中之一。通常大多数语言都是代码风格自由的,即不在乎缩进有多少,写在哪一行,只要有必要的空格即可。而Python是必须要有缩进的,这也导致很多使用其他语言的程序员开玩笑说:“Python程序员必须会用游标卡尺。”

Python 1.0于1994年1月发布,这个版本的主要功能是lambda、map、filter和reduce,但是吉多并不是很喜欢这个版本。

2000年10月,Python 2.0发布。这个版本的新功能主要是内存管理和循环检测垃圾收集器以及对Unicode的支持。该版本尤为重要的变化是开发流程的改变,Python此时有了一个更“透明”的社区。

2008年12月,Python 3.0发布。Python 3.x不向后兼容Python 2.x,这意味着Python 3.x可能无法运行由Python 2.x编写的代码。从一定程度上讲,Python 3.x代表着Python语言的未来。

今天的Python已经进入“3.0时代”,Python社区也在蓬勃发展,当你在此提出一个有关Python的问题时,几乎总有人遇到过同样的问题并已经解决。

0.3 Python的优点和缺点

0.2节讲解了Python的发展历程,下面讲解Python的优点和缺点。

先来讲解Python的优点。

(1)简单、易学。

Python的代码就像简单的英语文章一样,语法非常简单,特别适合阅读,使用户能够专注于解决问题,且极其容易上手。Python摒弃了C语言中非常复杂的指针,简化了语法。

(2)有丰富的库。

Python既有庞大的标准库,又有可定义的第三方库和模块等。它们可以帮助用户处理各种工作,包括re、json、time、Django、Twisted、Matplotlib、NumPy、pandas、sklearn等,这被称作Python的“功能齐全”理念。

(3)免费、开源。

Python的所有内容都是免费、开源的,用户可以任意发布软件版本、阅读软件的源码,以及对软件做改动。

(4)具有可移植性。

由于Python是开源的,因此目前它已经被移植到大多数平台。Python避开了对系统的依赖性,几乎可以在任意平台运行使用,例如Windows、macOS、Linux、Android、iOS等。

事物通常都有两面性,了解了Python的优点,接下来讲解Python的缺点。

(1)运行速度相对慢。

Python是解释型语言,运行速度会比C、C++慢,但是不影响使用。如果用户需要让一段关键的代码的运行速度更快,可以将这部分使用C或者C++编写,然后在Python中嵌入调用。另外,随着目前硬件水平的大幅度提高,这个缺点基本可以忽略不计。

(2)无法加密。

Python的开源性导致Python代码无法加密,这其实也是可以解决的。如果希望某些算法不公开,那么可以将这部分使用C或C++编写,然后在Python中嵌入调用,这样就可以完成加密。

(3)强制缩进。

如果用户经常使用C语言或者Java语言编写程序,那么Python的强制缩进语法会让用户很不适应;如果习惯了强制缩进,那么写出的代码会非常美观。

0.4 Python的应用领域和前景

0.3节讲解了Python的优点和缺点,下面讲解Python的应用领域和前景。

(1)Web开发。

Python可以快速创建Web应用,这得益于其强大的基础库和丰富的网络框架,例如著名的Django、Flask、Tornado和web.py等。使用这些Web框架,用户开发Web网站会更加安全与便利。

(2)游戏开发。

Python也能用来开发互动性的游戏。PySoy可以提供3D引擎,而pygame则可以提供开发一款游戏的基本功能和库支持。例如Civilization IVDisney's Toontown OnlineVega Strike等游戏都是通过Python开发的。

在网络游戏开发中,Python也有很多应用。相比Lua,Python有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑。

(3)桌面应用程序。

Python可用于桌面应用程序开发。它提供了可用于开发用户界面的库和模块等,如tkinter、wxPython和PyQt等,可用于在多个平台上创建桌面应用程序。

(4)网络爬虫。

在网络爬虫领域,Python非常强大,其几乎可将网络中的一切数据作为资源,通过自动化程序进行有针对性的数据采集以及处理。

现在已经有非常成熟的爬虫工具和框架,如Requests、Scrapy和pyspider等,可以利用它们高效地构建网络爬虫,获取需要的数据。

(5)云计算。

Python是从事云计算工作的人员必须掌握的一门编程语言,云计算框架OpenStack就是由Python开发的,读者如果想要深入学习云计算框架OpenStack并进行二次开发,就需要具备Python操作技能。

(6)自动化运维。

Python是一门综合性语言,能满足绝大部分自动化运维需求,前端和后端都可以做,同时由于大数据时代的到来和人工智能的快速发展,自动化运维可能会替代人工运维。而Python语言因其强大的第三方程序库,如Fabric、Ansible和SaltStack等,在系统运维方面有着非常大的优势。

(7)科学计算与数据可视化。

自1997年起,美国国家航天局(National Aeronautics and Space Administration,NASA)就大量使用Python进行各种复杂的科学计算,为Python积累了丰富的科学计算库。

并且Python和其他解释型语言(Shell、JavaScript、PHP)相比,在数据分析、可视化方面有相当完善和优秀的库,例如 NumPy、SciPy、Matplotlib、pandas等,这可以使Python开发人员高效编写科学计算程序。同时基于Matplotlib、seaborn,Python又能用于方便地绘制图形,能更直观地展现数据。

(8)金融分析与量化交易。

Python拥有大量的金融计算库,并且可以提供C++、Java等语言的接口以实现高效率的分析,因此成为金融领域快速开发和应用的一门关键语言。由于Python是开源的,因此降低了金融计算的成本,而且人们还可以通过广泛的社交网络获得大量Python用于金融的应用实例,极大地缩短了金融分析与量化交易的学习路线。

(9)机器学习与人工智能。

机器学习和人工智能是当下较热门的话题,Python在人工智能领域内的机器学习、神经网络、深度学习等方面,都是主流的编程语言。

目前世界上优秀的人工智能学习框架,比如Google公司的TensorFlow神经网络框架、Facebook(现更名为Meta)公司的PyTorch神经网络框架以及开源社区的Keras神经网络库等,都是用Python实现的。

Microsoft公司的微软认知工具包(Microsoft Cognitive Toolkit,CNTK)也完全支持 Python,并且该公司开发的VS Code,也已经把Python作为一级语言进行支持。

Python 擅长进行科学计算和数据分析,支持各种数学运算,可以绘制出更高质量的2D 和3D图像。

随着“人工智能时代”的来临,Python是“人工智能时代头牌语言”这件事,几乎可以确定。

0.5 Python的学习路线

0.4节讲解了Python的应用领域和前景,下面讲解Python的学习路线。

想要成为“编程高手”,需要掌握一门好的语言,有一条好的学习路线,再加一份坚持。

这是笔者根据多年的开发经验以及自己的教学经历,整理出来的一条完整的Python学习路线。

(1)基础知识。

搭建Python开发环境,认识Python程序,各种数据类型的操作方法,流程控制,函数等。

(2)核心技术。

面向对象,模块与类库,使用Python处理文件,处理错误与异常,迭代器、生成器(Generator)、装饰器(Decorator)等。

(3)高级应用。

Python与图形,调试Python程序,Python与数据库,Python与系统编程,Python与网络编程,Python与Office编程,Python与Web框架,Python与网络爬虫,Python设计模式等。

(4)项目实战。

Python在图像(Pillow)中的应用实战,Python在语言处理中的应用实战,Python在科学计算(NumPy)中的应用实战,Python在数据可视化(Matplotlib)中的应用实战等。

学习Python并不是很难:安装环境→编写代码→遇到问题→解决问题→能力提升——就是这么简单!快打开Python之门,开始学习Python吧!

第1章 搭建Python开发环境——开启Python之旅

本章讲解如何搭建Python开发环境,包括在Windows上安装Python、Linux与Python、第一个Python程序、使用交互界面、打造Python开发环境等。

本章要点(已掌握的在方框中打钩)

在Windows上安装Python

Linux与Python

第一个Python程序

使用交互界面

打造Python开发环境

1.1 在Windows上安装Python

Python 是跨平台的,它可以在 Windows、macOs 和 Linux 操作系统上运行。在 Windows操作系统上写的 Python 程序,放在 Linux 操作系统上也是能够运行的。

先介绍在Windows 7 64位操作系统上如何安装Python。首先要下载 Python,安装Python后会得到 Python 解释器、命令行交互环境,还有简单的集成开发环境(Integrated Development Environment,IDE)。下载和安装步骤如下。

Python下载

在Python官网首页选择【Downloads】选项,然后选择【Windows】选项,接着选择Python的版本,这里选择 Python 3.7.6,单击【Download Windows x86-64 executable installer】,如图1-1所示,完成下载。

图1-1 Python下载

下载完成后可以得到图1-2所示的文件。

图1-2 下载的文件

Python安装

➊ 双击图1-2所示的文件,弹出图1-3所示的窗口,选择【Customize installation】选项进行自定义安装,弹出图1-4所示的窗口。

图1-3 自定义安装

图1-4 选择功能特征

➋ 在图1-4所示的窗口中选中所需功能特征对应的复选框,单击【Next】按钮,弹出图1-5所示的窗口。

图1-5 高级选项

➌ 在图1-5所示的窗口中选中【Install for all users】复选框和【Add Python to environment variables】复选框等,单击【Browse】按钮,选择安装路径,例如,这里安装到【d:\tools\Python37】,单击【Install】按钮进行安装,弹出图1-6所示的窗口。

图1-6 安装进度

在图1-6所示的窗口中可以看到安装进度,等待安装成功即可。

➍ 安装成功后,会弹出图1-7所示的窗口,单击【Close】按钮,完成安装。

图1-7 安装成功

➎ 使用【Win+R】快捷键打开【运行】对话框,输入cmd,按【Enter】键,打开命令行(Command,CMD)界面,输入python命令并按【Enter】键,得到图1-8所示的测试结果,表示Python安装成功,可以正常使用。

图1-8 测试结果

除了直接安装Python搭建开发环境外,还可以安装Anaconda搭建开发环境,本书介绍的Python程序都是在Anaconda环境下编写与执行的。

Anaconda就是可以便捷获取包且对包能够进行管理,同时对环境统一管理的Python发行版。Anaconda包含conda、numpy在内的超过180个科学包及其依赖项。概括起来,Anaconda具有以下特点。

包含许多常用的数学科学、工程、数据分析的Python套件。

免费而且开放源码。

支持Windows、Linux、macOS。

支持Python 2.x、Python 3.x,而且可以自由切换。

内建Spyder编辑器。

包含conda以及Jupyter Notebook环境。

首先要下载和安装Anaconda,下载和安装步骤及功能介绍等如下。

Anaconda下载

在Anaconda官网可以下载Anaconda的各个操作系统的版本,这里选择Windows的,然后选择【64-Bit Graphical Installer】选项,图1-9所示,完成下载。

图1-9 Anaconda下载

下载完成后可以得到图1-10所示的文件。

图1-10 下载的文件

Anaconda安装

➊ 双击图1-10所示的文件,弹出图1-11所示的窗口,单击【Next】按钮,弹出图1-12所示的窗口。

图1-11 欢迎窗口

图1-12 许可协议

➋ 在图1-12所示的窗口中单击【I Agree】按钮,弹出图1-13所示的窗口。

图1-13 选择安装类型

➌ 在图1-13所示的窗口中选中【All Users】单选按钮,然后单击【Next】按钮,弹出图1-14所示的窗口。

图1-14 选择安装路径

➍ 在图1-14所示的窗口中,单击【Browse】按钮,选择安装路径,例如,这里安装到【d:\tools\Anaconda3】,单击【Next】按钮进行安装,弹出图1-15所示的窗口。

图1-15 高级安装选项

➎ 在图1-15所示的窗口中选中【Add Anaconda3 to the system PATH environment variable】复选框和【Register Anaconda3 as the system Python 3.7】复选框,单击【Install】按钮进行安装,弹出图1-16所示的窗口。

图1-16 安装进度

➏ 在图1-16所示的窗口中可以看到安装进度,等待安装完成即可。安装完成后,弹出图1-17所示的窗口。

图1-17 安装完成

➐ 在图1-17所示的窗口中单击【Next】按钮,弹出图1-18所示的窗口。

图1-18 介绍

➑ 在图1-18所示的窗口中单击【Next】按钮,弹出图1-19所示的窗口。

图1-19 提示

➒在图1-19所示的窗口中单击【Finish】按钮,完成安装并退出。

Anaconda功能介绍

安装完成之后,在【开始】菜单会有图1-20所示的关于Anaconda3的内容。

图1-20 关于Anaconda3的内容

(1)命令行界面。

其中的【Anaconda Powershell Prompt(Anaconda3)】和【Anaconda Prompt(Anaconda3)】是命令行界面,它们和Windows操作系统中的命令行界面功能类似,用于进入Anaconda 默认的虚拟环境“base”,如图1-21所示。

图1-21 Anaconda命令行界面

(2)Jupyter Notebook。

➊ 其中的【Jupyter Notebook(Anaconda3)】是一个可交互的Web应用程序,便于创建和共享程序文档,支持实时编写代码、数学方程、可视化和Markdown等,用途包括数据清理和转换、数值模拟、统计建模、机器学习等。在命令行界面中,进入一个目录,输入Jupyter Notebook命令并按【Enter】键,如图1-22所示。

图1-22 运行Jupyter Notebook

➋ 打开浏览器,访问http://localhost:8888,如图1-23所示。

图1-23 Web访问

➌ 在图1-23所示的窗口中单击【New】按钮,接着单击【Python 3】选项,就可以创建一个基于Python 3的文件,如图1-24所示。

图1-24 创建Python文件

➍ 创建成功后,就可以在其中编写代码,如图1-25所示。

图1-25 编写代码

➎ 在图1-25所示的窗口中单击【运行】按钮,运行代码,运行结果如图1-26所示。

图1-26 运行结果

(3)Spyder。

其中的Spyder(Anaconda3)是一个内建的IDE。Anaconda开发环境搭建完成后,也可以启动Spyder编辑器来编写程序。Anaconda内建的Spyder编辑器是编辑及执行Python程序的IDE,具有语法提示、程序除错与自动缩排功能。我们可以通过【开始】菜单启动Spyder编辑器,Spyder编辑器预设的工作区的上方是菜单栏及工具栏,左方为程序编辑区,右方为功能面板区,如图1-27所示。

图1-27 Spyder编辑器预设的工作区

Anaconda命令

关于Anaconda命令,这里主要介绍与虚拟环境相关的命令。

(1)创建虚拟环境:conda create -n虚拟环境名python=版本号。

(2)删除虚拟环境:conda remove -n 虚拟环境名--all。

(3)激活虚拟环境:activate 虚拟环境名。

(4)离开虚拟环境:deactivate。

1.2 Linux与Python

1.1节讲解了在Windows上安装Python,下面讲解Linux与Python。

大部分Linux操作系统内置了Python 2和Python 3。这里以Ubuntu 16.04为例,使用图1-28所示的命令查看Python的版本。

图1-28 在Ubuntu 16.04中查看Python的版本

如果是macOS 10.9及以下的版本,那么操作系统自带的Python版本是2.7,并没有默认安装Python 3。如果需要安装Python 3,那么要参照前文所讲步骤在Python官网选择【Download macOS 64-bit installer】选项下载安装文件,如图1-29所示,双击运行文件并根据系统提示进行安装。

图1-29 下载安装文件

安装成功后,使用图1-30所示的命令查看Python的版本。

图1-30 查看Python的版本

注意

后文介绍的操作使用的是Windows 7 64位操作系统,Python解释器环境是Anaconda。

1.3 第一个Python程序:Hello World!

1.1~1.2节讲解了在Windows和Linux上安装Python,下面讲解第一个Python程序:Hello World!。

一般来说,程序的编写都是从“Hello World!”开始的。

➊ 新建一个文本文件,将其名字改成HelloWorld.py,在其中写入代码,如图1-31所示。

图1-31 HelloWorld.py文件

➋ 在HelloWorld.py文件所在的资源管理器窗口的空白处按住【Shift】键,同时单击鼠标右键,弹出图1-32所示的快捷菜单。

图1-32 快捷菜单

➌ 在图1-32所示的快捷菜单中选择【在此处打开命令窗口】,弹出图1-33所示的命令行界面。

图1-33 命令行界面窗口

➍ 在图1-33中输入命令python HelloWorld.py并按【Enter】键,得到图1-34所示的运行结果。

图1-34 运行结果

到此,第一个Python程序Hello World!就编写完成了。

1.4 使用交互界面

1.3节讲解了第一个Python程序,下面讲解使用交互界面。

IPython是Python的交互式Shell,比默认的Python Shell好用得多,支持变量自动补全、自动缩进、Bash Shell命令,内置了许多有用的功能和函数。学习IPython将会让使用者以更高的效率来使用Python,同时IPython也是利用Python进行科学计算和交互可视化的最佳平台之一。

如果把Anaconda作为Python解释器,IPython默认已经安装,可以直接使用。

如果把Python 3.7作为Python解释器,IPython需要单独安装,安装命令如下所示。

pip install ipython

接下来讲解如何进入IPython交互界面。使用【Win+R】快捷键打开命令行界面,输入ipython命令并按【Enter】键,得到图1-35所示的结果,表示已经进入IPython交互界面,可以正常使用。

图1-35 进入IPython交互界面

IPython提供了一些高级功能。

(1)自动补全。

在IPython交互界面中输入表达式时,只要按【Tab】键,当前命名空间中任何与输入的字符串相匹配的变量(对象或者函数等)就会被找出来,自动补全并列出字符串以字母l开头的方法,如图1-36所示。

图1-36 自动补全

在图1-36所示的界面中,可使用上、下方向键或者接着输入字母选择合适的方法。

(2)内省。

➊ 在变量的前面或者后面加上?,就可以将有关该对象的一些通用信息显示出来,这就叫作对象的内省。如图1-37所示,使用?将变量ls和字符串msg方法lower的通用信息显示出来。

图1-37 内省使用?

➋ 如果使用??,那么还可以显示出方法的源码。如图1-38所示,使用??将方法add的源码显示出来。

图1-38 内省使用??

➌ 还可以使用通配符字符串查找出所有与该通配符字符串相匹配的名称。图1-39所示为使用两个**查找字符串下所有包含low的方法。

图1-39 内省通配符字符串查找

(3)使用历史命令。

在IPython Shell中,要想使用历史命令,简单地使用上、下方向键即可,另外也可以使用hist命令(或者history命令)查看所有的历史输入。正确的做法是使用%hist,%hist是一个“魔法命令”)。图1-40所示为使用%hist命令查询历史命令。

图1-40 查询历史命令

如果在hist命令之后加上-n,即hist -n,则也可以显示出输入的序号。在任何交互会话中,输入历史和输出历史都会被保存在In和Out变量中,并用序号作为索引。另外,包含_、__、___和_i、_ii、_iii的变量保存着最后3个输出和输入对象。_n和_in(这里的n表示具体的数字)变量返回第n个输出和输入的历史命令。

(4)测量代码运行时间。

可以使用%timeit“魔法命令”快速测量代码运行时间。相同的命令会在一个循环中多次运行,可将多次运行时长的平均值作为该命令的最终评估时长,-r选项控制循环的次数。图1-41所示为使用%timeit命令测量代码运行时间。

图1-41 测量代码运行时间

1.5 打造Python开发环境

1.4节讲解了使用交互界面,下面讲解打造Python开发环境。

为了更好地开发Python项目,需要选择优秀的IDE,这里使用的是PyCharm。PyCharm是由JetBrains公司开发的Python IDE,支持macOS、Windows、Linux操作系统。

PyCharm的功能包括调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。PyCharm的下载和安装步骤等如下。

PyCharm下载

在PyCharm官网首页,单击中间的【Download】按钮,在弹出的页面里选择【Windows】选项,选择Professional版本,单击【Download】按钮,完成下载,如图1-42所示。

图1-42 PyCharm下载

下载完成后可以得到图1-43所示的文件。

图1-43 下载的文件

PyCharm安装

➊ 双击图1-43所示的文件,弹出图1-44所示的窗口,单击【Next】按钮,弹出图1-45所示的窗口。

图1-44 欢迎窗口

图1-45 选择安装路径

➋ 在图1-45所示的窗口中,单击【Browse】按钮,选择安装路径,例如,这里安装到【d:\tools\PyCharm 2019.3.4】,单击【Next】按钮进行安装,弹出图1-46所示的窗口。

图1-46 安装选项

➌ 在图1-46所示的窗口中单击【Next】按钮,弹出图1-47所示的窗口。

图1-47 选择打开菜单文件夹

➍ 在图1-47所示的窗口中单击【Install】按钮进行安装,弹出图1-48所示的窗口。

图1-48 安装进度

➎ 在图1-48所示的窗口中可以看到安装进度,等待安装完成即可。安装完成后,弹出图1-49所示的窗口。

图1-49 安装完成

➏ 在图1-49所示的窗口中单击【Finish】按钮,完成安装。

PyCharm使用

➊ 安装完成之后,在【开始】菜单中找到PyCharm,单击打开后弹出图1-50所示的对话框。

图1-50 配置设置

➋ 在图1-50所示的对话框中选中【Do not import settings】单选按钮,单击【OK】按钮,弹出图1-51所示的对话框。

图1-51 自定义PyCharm

➌ 在图1-51所示的对话框中选中【Light】单选按钮,单击【Skip Remaining and Set Defaults】按钮,弹出图1-52所示的窗口。

图1-52 试用

➍ 在图1-52所示的窗口中选中【Evaluate for free】单选按钮,单击【Evaluate】按钮,再单击【Continue】按钮,弹出图1-53所示的窗口。

图1-53 欢迎窗口

➎在图1-53所示的窗口中单击【Create New Project】选项,弹出图1-54所示的窗口。

图1-54 创建项目

➏在图1-54所示的窗口中选择项目的类型、路径,例如,这里选择【Pure Python】创建普通的Python项目,项目的路径设置为【C:\Users\Administrator\Book\ch02】,单击【Create】按钮创建项目,弹出图1-55所示的窗口。

图1-55 项目预览

➐ 在图1-55所示的窗口中单击【File】→【Settings】→【Project : ch02】→【Project Interpreter】,弹出图1-56所示的对话框。

图1-56 查看项目解释器

➑ 在图1-56所示的对话框中,单击按钮,单击【Add】→【System Interpreter】,弹出图1-57所示的对话框。

图1-57 查看系统解释器

➒在图1-57所示的对话框中,单击按钮选择已存在的解释器,或单击按钮自定义找到【python.exe】解释器,这里选择的是Anaconda中的Python解释器,单击【OK】按钮,等待安装进程执行完毕后,完成解释器的设置。

解释器设置完毕后,在项目名称【ch02】上单击鼠标右键,选择【New】→【Directory】选项,输入文件夹的名称并按【Enter】键,可以创建文件夹。在项目名称【ch02】或子文件夹上单击鼠标右键,选择【New】→【Python File】选项,输入文件的名称并按【Enter】键,创建Python文件,如图1-58所示。

图1-58 创建Python文件

➓在图1-58所示的窗口中编写代码,如图1-59所示。

图1-59 编写代码

在图1-59所示的窗口中,在Python代码的空白区域,单击鼠标右键,选中【Run】选项,运行代码,运行结果如图1-60所示。

图1-60 运行结果

1.6 见招拆招

conda和pip的Install命令都是使用默认下载源,在国内访问默认下载源的服务器时下载速度比较慢,这里为了提高下载速度,将conda和pip的默认下载源修改成清华大学提供的下载源。

修改conda的默认下载源,提高下载速度

使用【Win+R】快捷键打开命令行界面,输入如下命令。

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --set show_channel_urls yes

运行命令,如图1-61所示。

图1-61 修改conda下载源

修改pip的默认下载源,提高下载速度

在Users目录中创建一个名为pip的文件夹,在pip文件夹中创建一个名为pip.ini的文件,如图1-62 所示。

图1-62 创建pip.ini文件

在pip.ini中输入如下命令,保存并退出。

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

1.7 本章小结

本章讲解如何搭建Python开发环境,从而开启Python之旅。首先讲解在Windows上安装Python,包括在64位的Windows 7上下载和安装Python和Anaconda等;然后讲解Linux与Python,介绍Linux下的Python的安装,包括Ubuntu和macOS;接着讲解第一个Python程序,介绍如何使用Python编写第一个程序;还讲解了如何使用交互界面,包括IPython交互界面的使用方法;最后讲解如何打造Python开发环境,包括PyCharm的下载、安装和使用。

相关图书

深度学习的数学——使用Python语言
深度学习的数学——使用Python语言
动手学自然语言处理
动手学自然语言处理
Web应用安全
Web应用安全
Python高性能编程(第2版)
Python高性能编程(第2版)
图像处理与计算机视觉实践——基于OpenCV和Python
图像处理与计算机视觉实践——基于OpenCV和Python
Python数据科学实战
Python数据科学实战

相关文章

相关课程