前言
Python在机器学习、人工智能、大数据分析领域非常流行,可以说是算法工程师的标配编程语言。随着互联网的发展,Python在许多领域都表现得非常优秀,它是一门真正意义上的全栈语言,即使目前世界上使用最广泛的Java语言,在某些方面与Python相比也逊色很多!
对还没有步入编程领域的读者而言,学习一门语言并不困难,难的是如何将语言应用到实际开发中。本书旨在帮助无编程语言基础的读者快速掌握Python,并熟练应用Python解决实际问题。
本书实验环境是Windows操作系统,Jupyter Notebook编译器与Python 3.6。全书共12章,按照语言自身的特点进行内容重组。
第1~4章是编程入门,主要介绍Python基本语法,包括变量、常量、关键字、运算符、表达式、标准数据类型、系统输入函数和输出函数等。帮助读者养成良好的编程习惯,掌握面向过程编程范式(顺序结构、选择结构、循环结构)。
第5、6章介绍代码封装和重用技术的两种编程范式,即函数式编程范式和面向对象编程范式。封装的意义在于保护或者防止代码(数据)被无意破坏。在面向对象程序设计中,数据被看作是一个中心的元素并且和使用它的函数结合得很密切,从而保护数据不被其他函数意外修改。对于软件开发人员而言,代码重用有助于简化和加快软件生产,并解决与业务相关的技术挑战。这部分内容包括函数、类、模块等,由于Python是面向对象语言,这些内容尤为重要,同时也是接下来编程应用的主要思路。
第7~9章介绍数据结构。为了实现高效的算法,数据组织尤为重要。数据结构包括列表、元组、集合、字典、数据框、字符串和文件等。想要应用Python解决实际问题,对数据结构的学习要做到熟练掌握。
第10章是比较独立的一章,主要培养基本的调试技能。程序运行出现bug是常态,如何精准捕获bug是成熟程序员必备的技能。
第11、12章介绍了两大应用场景:爬虫和可视化。这是对所学知识的检验,了解实际项目开发过程。项目完整实现了数据采集、数据预处理、数据分析和数据应用的全过程。
本书配有大量丰富的案例,因受篇幅限制,部分案例索引见下表:
案例索引
本书主要特色如下:
1)根据语言自身特性重构知识点。比如,数据结构、字符串章节安排在面向对象章节之后。
2)注重解决实际问题。编写初衷不是让读者“学会”,而是让读者“能做”,无论是案例的选取还是应用场景的介绍都尽量完整、有意义。
3)照顾无编程基础的人群学习。知识点组织尽量以图表形式呈现,帮助读者深刻理解概念的内涵,比如,常量、变量、标识符之间的区别。每一章后都有小结,便于读者掌握重点知识。
4)提供了书中所有的配套代码、数据、PPT和习题,读者可通过上机实验,快速掌握Python语言。
5)对于难点,提供了78个微课视频,便于教学和自学。
本书第1、2章由吴芳执笔,第3、4章由梁爽执笔,第5章由孙溢洋执笔,第6章由吴敏执笔,第7章由徐欢潇执笔,第8章由程显毅执笔,第9章由钱兰美执笔,第10章由沈建涛执笔,第11章由朱敏执笔,第12章由孙丽丽执笔。其他编者参与资料收集、习题解答、课件制作等。
由于编者水平有限,书中难免会存在不当之处,希望读者多加指教,在此深表感谢!
编者