前言 为应对新一轮科技革命与产业变革,支撑服务创新等,教育部积极推进新工科建设,促进高等教育为强国建设助力。虽然目前新工科没有一个精确的定义,但大家对新工科的基本范畴已经达成了共识,就是利用人工智能、智能制造、机器人及云计算等技术实现对传统工科专业的升级改造。在这样的时代背景下,计算机程序设计在高校计算机教育中就显得尤为重要。 传统的高级程序设计语言(如C语言)的语法较为复杂,需要掌握的细节较多,即使只是实现一个简单功能,也要涉及很多概念,编写的代码也较复杂。再加上指针等概念,容易使学生产生畏难和厌学情绪。发展势头迅猛的Python,给了程序设计教学一根定海神针。 Python是一种功能强大的程序设计语言,在支持面向过程的同时,也全面支持面向对象技术。它优雅、清晰、简洁的语法特点,能使初学者从语法细节中解脱出来,从而专注于解决问题本身。并且由于Python是一种开源语言,全球各个Python社区中有数以亿万计的编程爱好者,为我们提供了各个领域的各种有益的源代码。这对于需要快速掌握编程的学习者来说,无疑是大有帮助。时势造英雄,目前火热的人工智能促进了Python的发展,而Python也让人工智能算法变得更加简单。正是这些原因,Python成为当前最热门的编程语言之一。 目前市面上有关Python的图书很多,但是很难找到一本真正适合初学者的教材。本书的定位是将Python作为第一门程序设计语言,系统介绍Python程序设计的基础知识。全书共15章,主要介绍了Python的语言基础、三种基本控制结构、列表和元组(有序序列)、字典和集合(无序序列)、字符串和正则表达式、函数与模块、面向对象编程技术、文件操作、异常处理、图形用户界面设计、数据库编程,以及Python网站开发。 在Python发展过程中,形成了Python 2和Python 3两个不兼容的系列。从语言的发展考虑,本书选择的是Python 3,书中的所有代码都适用于Python 3环境。 本书遵循从浅到深、循序渐进的学习规律,内容安排合理、衔接紧密,没有知识点的跳跃或不一致,非常适合初学者进行程序设计的入门学习。本书无星号的章节适合零基础的大学本科生作为学习程序设计的通识课教材; 其他带星号的章节,如异常处理、图形用户界面设计、数据库编程和Python网站开发等高级技术,可以供Python高级编程技术的选修课使用,也可以作为Python程序员的参考资料。 本书第1~5章、第12~13章由钱毅湘编写,第6~8章、第14章由熊福松编写,第9~11章、第15章由黄蔚编写。全书由黄蔚统稿,伏玉琛提供了部分案例,并对本书的编写进行了有益的指导。此外,缪振炎同学为本书案例的编写给予了有力帮助。 本书的编写是在苏州大学计算机学院和东吴学院领导的支持下完成的,获得了计算机教学部全体老师的帮助,在此对他们表示感谢。 由于作者水平有限,加之时间仓促,书中难免存在疏漏之处,恳请广大读者批评指正。 作者 2019年10月