产品特色
内容简介
《Python语言程序设计基础(第2版)/教育部大学计算机课程改革项目规划教材》提出了以理解和运用计算生态为目标的Python语言教学思想,在系统讲解Python语言语法的同时介绍了从数据理解到图像处理的14个Python函数库,向初学Python语言的读者展示了全新的编程语言学习路径。全书一共设计了25个非常具有现代感的实例,从绘制蟒蛇、理解天天向上的力量到机器学习、网络爬虫,从文本进度条、统计名著人物重要性到图像手绘效果、雷达图绘制,绝大多数实例为作者原创,将随着内容深入不断激发读者学习Python语言的热情,因为“编程是件很有趣的事儿”。
《Python语言程序设计基础(第2版)/教育部大学计算机课程改革项目规划教材》内容丰富、叙述清晰、循序渐进,采用新形态构建形式,提供大量扩展阅读资料、学习资料和学习视频。本书作者(中国大学MOOC平台“Python语言程序设计”课程的主讲教师)建议广大读者借助在线开放课程,深入学习本书内容。本书适合初学Python语言的读者使用,也适合作为各类大专院校的教材,同时,也可作为对Python感兴趣读者的自学参考书。
作者简介
嵩天,博士,北京理工大学计算机学院副教授,美国圣路易斯华盛顿大学访问学者,中国大学MOOC*年轻的课程负责人,深受学生喜爱的学霸型老师。他是清华直博保送生、计算机专业科班博士、百人产品团队负责人,他曾经研发过CPU、编译器、网络协议、网络安全设备,成功产业化多套产品,还是多项国家自然科学基金项目的主持者。他是科研牛人,也是教学达人。他用Python玩转科研,现在他教你如何轻松玩转Python。
内页插图
目录
第一部分 初识Python语言
第1章 程序设计基本方法
1.1 计算机的概念
1.2 程序设计语言
1.2.1 程序设计语言概述
1.2.2 编译和解释
1.2.3 计算机编程
1.3 Python语言概述
1.3.1 Python语言的发展
1.3.2 编写Hello程序
1.3.3 Python语言的特点
1.4 Python语言开发环境配置
1.4.1 安装Python解释器
1.4.2 运行Hello程序
1.4.3 运行Python小程序
1.5 程序的基本编写方法
1.5.1 IPO程序编写方法
1.5.2 理解问题的计算部分
1.6 Python语言的版本更迭
1.6.1 版本之间的区别
1.6.2 版本的选择建议
本章小结
程序练习题
第2章:Python程序实例解析
2.1 实例1:温度转换
2.2 Python程序语法元素分析
2.2.1 程序的格式框架
2.2.2 注释
2.2.3 命名与保留字
2.2.4 字符串
2.2.5 赋值语句
2.2.6 input()函数
2.2.7 分支语句
2.2.8 eval()函数
2.2.9 print()函数
2.2.10 循环语句
2.2.11 函数
2.3 实例2:Python蟒蛇绘制
2.4 turtle库语法元素分析
2.4.1 绘图坐标体系
2.4.2 画笔控制函数
2.4.3 形状绘制函数
2.4.4 函数的封装
本章小结
程序练习题
第二部分 深入Python语言
第3章 基本数据类型
3.1 数字类型
3.1.1 数字类型概述
3.1.2 整数类型
3.1.3 浮点数类型
3.1.4 复数类型
3.2 数字类型的操作
3.2.1 内置的数值运算操作符
3.2.2 内置的数值运算函数
3.2.3 内置的数字类型转换函数
3.3 模块1:math库的使用
3_3.1 math库概述
3.3.2 math库解析
3.4 实例3:天天向上的力量
3.5 字符串类型及其操作
3.5.1 字符串类型的表示
3.5.2 基本的字符串操作符
3.5.3 内置的字符串处理函数
3.5.4 内置的字符串处理方法
3.6 字符串类型的格式化
3.6.1 format()方法的基本使用
3.6.2 format()方法的格式控制
3.7 实例4:文本进度条
3.7.1 简单的开始
3.7.2 单行动态刷新
3.7.3 带刷新的文本进度条
本章小结
程序练习题
第4章 程序的控制结构
4.1 程序的基本结构
4.1.1 程序流程图
4.1.2 程序的基本结构
4.1.3 程序的基本结构实例
4.2 程序的分支结构
4.2.1 单分支结构:if语句
4.2.2 二分支结构:if-else语句
4.2.3 多分支结构:if-elif-else语句
4.3 实例5:身体质量指数BMl
4.4 程序的循环结构
4.4.1 遍历循环:for语句
4.4.2 无限循环:while语句
4.4.3 循环保留字:break和continue
4.5 模块2:random库的使用
4.5.1 random库概述
4..5.2 random库解析
4.6 实例6:7c的计算
4.7 程序的异常处理
4.7.1 异常处理:try-except语句
4.7.2 异常的高级用法
本章小结
程序练习题
第5章 函数和代码复用
5.1 函数的基本使用
5.1.1 函数的定义
5.1.2 函数的调用过程
5.1.3 lambda函数
5.2 函数的参数传递
5.2.1 可选参数和可变数量参数
5.2.2 参数的位置和名称传递
5.2 -3函数的返回值
5.2.4 函数对变量的作用
5.3 模块3:datetime库的使用
5.3.1 datetime库概述
5.3.2 datetime库解析
5.4 实例7:七段数码管绘制
5.5 代码复用和模块化设计
5.6 函数的递归
5.6.1 递归的定义
……
第3章 基本数据类型
第4章 程序的控制结构
第5章 函数和代码复用
第6章 组合数据类型
第7章 文件和数据格式化
第三部分 运用Python语言
第8章 程序设计方法论
第9章 科学计算和可视化
第10章 网络爬虫和自动化
附录A 极简计算机基础
附录B 人机接口和图形编程
附录C 数据处理和挖掘
全书快速参考索引
参考文献
前言/序言
——Python语言是什么?它只是其他编程语言的替代品吗?
——不,Python是一种生态语言。
地球几十亿年的生命孕育出丰富多彩的自然生态,物竞天择,依存繁衍。计算机70余年的发展开创了一个释放全球智力、激发创新热情的开源共享的信息时代。随着专业分工和智慧角逐的深入,各信息技术分支逐渐形成了一批以开源共享为形态的开放资源,包括开源操作系统、数据库、软件工具甚至开源硬件,构成了“计算生态”。与自然生态类似,计算生态并没有顶层设计,而是获益于草根工程师或一线专家无私贡献的专业智慧。计算生态中的各元素在竞争中发展、依存、终结、再生,成为信息技术快速发展最重要的创新动力。
Python语言在计算生态的大背景下诞生、发展、再生,历时近30年,其简洁和面向生态的设计理念得到了广泛认同,形成了全球范围最大的单一语言编程社区。超过9万个第三方编程库覆盖从数据到智能、二维到三维、文本处理到虚拟现实、控制逻辑到系统结构等几乎所有的计算领域。最为可贵的是,Python语言能够将其他编程语言的优秀成果封装起来,降低使用复杂度。因此,我们称:Python语言为“生态语言”。
本书在国内高校广泛接触并关注Python语言教学的大背景下编写,试图从计算技术发展角度阐释Python语言作为“生态语言”的价值,展示一条与其他编程语言不同的学习路径。具体来说,本书设计了超过20个利用第三方库的编程实例,伴随Python语言语法讲解了10余个标准库或第三方库的使用,在讲解程序设计基础概念、Python语言语法的同时,帮助读者理解围绕计算生态开展编程并解决问题的基本理念和方法。
“理解运用计算生态,培养集成创新思维”是我们期望传达的教学理念。本书以此为出发点,试图实现两个目标:使读者掌握一门终身受用的编程语言(Python语言);使读者体验运用计算生态解决实际问题的过程和思路。期待读者能通过Python语言的学习,真正走进计算世界,享受创新的乐趣!
本书成稿过程一波三折,先后历时一年,随着教学理念的不断发展完善以及教学经验的积累,本书大部分内容被推翻或重写过多次,本书超过90%的实例都是作者原创。此外,借助作者在中国大学MOOC:平台(www.icourses.cn/imooc)上开设的“Python语言程序设计”课程及“Python系列专题”课程,读者可愉快地体验在线学习的乐趣。
为了辅助教师开展教学和配合读者学习,本书提供:Python语言相关的资源平台,其中本书所配套电子资源均上传至Python123主平台(www.python123.org)。希望扩展练习的读者或计划组织课内教学的老师,也可以使用Pythonl23题库和评测系统(www、python123.io)。
本书作者均来自于北京理工大学,学校发展教育教学的决心和行动给予作者莫大的支持,在此表示感谢。此外,还要感谢在本书撰写和出版过程中给予过帮助的人,包括研究生/本科生袁炜佳、李天龙、杨雅婷、刘苗苗、魏煜等。本书得到了教育部谷歌产学合作项目、北京市教育委员会“北京高等学校青年英才计划项目”、北京理工大学优秀青年教师资助计划项目(教学提升)和北京理工大学校级十三五规划教材项目的资助,在此一并表示感谢。
《Python语言程序设计基础(第2版)/教育部大学计算机课程改革项目规划教材》内容简介 《Python语言程序设计基础(第2版)》作为教育部大学计算机课程改革项目规划教材,深刻理解了当前信息技术飞速发展背景下,高等教育对于计算机基础教学提出的新要求。本书旨在为计算机科学与技术、软件工程、人工智能、数据科学等相关专业以及非计算机专业的学生提供一套全面、系统且与时俱进的Python编程入门教材。本书在继承第一版优秀教学理念的基础上,紧密结合近年来Python语言在学术界和产业界的最新发展趋势,并充分考虑了国内高校计算机基础课程的教学实际,力求为读者打造一条扎实、高效的学习路径。 教学目标与特色: 本书的首要教学目标是帮助读者建立起坚实的程序设计思想和计算思维能力。通过Python这门集易学性、通用性和强大功能于一身的语言,让初学者能够快速掌握编程的基本概念,理解代码如何与计算机进行交互,并学会如何将现实世界的问题转化为计算机可以解决的方案。 本书的另一大特色在于其“理论与实践并重”的教学理念。我们深知,枯燥的理论讲解难以激发学习兴趣,而脱离理论指导的实践则容易走入误区。因此,本书在介绍每一个概念时,都辅以大量通俗易懂的文字解释,并立即结合精心设计的例题和习题进行巩固。这些例题不仅覆盖了知识点的基本应用,还逐步引入了一些简单而有趣的实际问题,让读者在动手实践中体会编程的乐趣和力量。 同时,本书充分考虑到了大学计算机课程的改革方向。它强调了Python在现代计算领域中的核心地位,并为读者后续学习更高级的计算机科学主题(如数据结构、算法、操作系统、网络编程、人工智能等)打下坚实的基础。本书的内容组织紧凑而有序,循序渐进,确保了不同知识背景的读者都能从中受益。 内容体系与深度: 全书内容涵盖了Python语言程序设计的核心要素,从最基础的语法概念到相对复杂的程序结构,再到一些实际应用中的常见技术。 第一部分:Python编程入门 开篇: 引导读者认识Python语言的特点、应用领域以及安装配置开发环境,让读者对即将开始的编程之旅有一个清晰的认识。 基本数据类型与运算符: 深入讲解Python中整数、浮点数、布尔值、字符串等基本数据类型的特性,以及算术运算符、比较运算符、逻辑运算符等的使用方法。理解数据类型是编程的基础,本书通过丰富的示例,帮助读者清晰区分不同数据类型在内存中的存储方式和运算规则。 变量、表达式与语句: 讲解变量的声明、赋值与作用域,以及如何通过表达式构建计算逻辑,并理解Python语句的基本结构和执行顺序。 输入与输出: 介绍如何利用`input()`函数获取用户输入,以及如何使用`print()`函数将信息输出到屏幕,这是实现程序与用户交互的关键。 流程控制语句: 这是程序逻辑的核心。本书详细讲解了条件判断语句(`if-elif-else`)的各种用法,以及循环结构(`for`循环和`while`循环)的创建和控制。通过控制流的学习,读者将能够编写出能够根据不同条件做出判断、重复执行任务的程序。 第二部分:数据结构与组合数据类型 列表(List): 重点介绍Python中最常用的序列类型——列表。讲解列表的创建、元素的访问、修改、添加、删除等操作,以及列表推导式等高级用法。 元组(Tuple): 讲解元组的特性(不可变性)及其与列表的区别,适用于存储不可变序列。 字典(Dictionary): 深入介绍Python的映射类型——字典,重点讲解键值对的概念、字典的创建、访问、修改、添加、删除等操作,以及字典在数据管理中的强大应用。 集合(Set): 介绍集合的概念(无序、不重复元素)及其常用操作,如并集、交集、差集等,以及集合在去重和成员检测方面的优势。 字符串的深入应用: 除了作为基本数据类型,本书还将字符串的常用操作进行整合和深化,包括切片、查找、替换、分割、连接等,并介绍格式化字符串。 第三部分:函数与模块 函数的定义与调用: 讲解如何定义自己的函数,包括参数传递(位置参数、关键字参数、默认参数、可变参数)、返回值等。函数是代码复用和模块化的基石,通过函数,读者可以构建结构清晰、易于维护的程序。 函数的作用域与生命周期: 深入理解局部变量和全局变量的概念,以及函数调用栈的工作原理,这对于编写正确且高效的函数至关重要。 递归函数: 介绍递归的概念及其在解决某些特定问题(如阶乘、斐波那契数列)时的优雅应用。 模块与包: 讲解如何导入和使用Python标准库及第三方库,理解模块化编程的思想,以及如何组织和打包自己的代码。本书将引导读者接触并初步使用一些常用的标准库,如`math`、`random`等。 第四部分:面向对象程序设计(OOP) 类与对象: 介绍面向对象编程的核心概念,包括类(Class)的定义、属性、方法的创建,以及对象的实例化。 封装、继承与多态: 详细讲解OOP的三大特性。封装强调将数据和操作数据的方法封装在一起;继承允许创建新的类,继承现有类的属性和方法;多态则允许使用统一的接口处理不同类型的对象。通过面向对象的设计,可以使程序更加模块化、可重用和易于扩展。 特殊方法(Dunder Methods): 介绍Python中用于实现特殊行为的魔术方法,如`__init__`、`__str__`等,它们使对象能够以更自然的方式与Python的内置功能进行交互。 第五部分:文件操作与异常处理 文件读写: 讲解如何打开、读取、写入和关闭文件,以及不同的文件打开模式。掌握文件操作是程序处理持久化数据不可或缺的技能。 异常处理: 介绍`try-except`结构,用于捕获和处理程序运行时可能发生的错误(异常),提高程序的健壮性。 第六部分:Python编程实践 部分综合应用示例: 本部分将前面学到的知识融会贯通,提供一些具有代表性的、贴近实际的编程案例,例如简单的命令行工具、数据处理脚本、图形界面基础(如使用Tkinter),以及一些数学或科学计算的初步尝试。这些案例旨在展示Python语言的强大能力,并鼓励读者将所学知识应用于解决实际问题。 本书的读者定位: 本书主要面向以下读者群体: 1. 大学非计算机专业学生: 希望通过一门语言快速掌握编程基本技能,为后续学习其他交叉学科打下基础。 2. 大学计算机及相关专业学生: 作为入门级教材,帮助建立扎实的Python编程基础,为后续深入学习数据结构、算法、操作系统、人工智能等课程做好准备。 3. 初学者和转行者: 对编程感兴趣,希望从一门易学易用的语言开始学习,快速上手并能进行实际项目开发。 4. 需要使用Python进行数据分析、科学计算、Web开发等领域的从业人员: 作为快速学习Python语言基础的参考。 总结: 《Python语言程序设计基础(第2版)》是一本结构清晰、内容丰富、实践性强的Python入门教材。它不仅传授了Python语言的语法和编程技巧,更注重培养读者的计算思维和解决问题的能力。通过本书的学习,读者将能够自信地运用Python进行各种编程任务,为未来的学习和职业发展奠定坚实的基础。本书也紧随国家教育改革的步伐,力求为提升我国高校计算机基础教育水平贡献力量。