Python程序设计(第3版)

Python程序设计(第3版)

编辑推荐

以Python语言为工具,采用相当传统的方法,强调解决问题、设计和编程是计算机科学的核心技能。

内容简介

全书共13章,此外,还包含两个附录。第 1章到第5章介绍计算机与程序、编写简单程序、数字计算、对象和图形、字符串处理等基础知识。第6章到第8章介绍函数、判断结构、循环结构和布尔值等话题。第9章到第 13章着重介绍一些较为高档的程序设计方法,包括模拟与设计、类、数据集合、面向对象设计、算法设计与递归等。附录部分给出了Python快速参考和术语表。每一章的末尾配有丰富的练习,包括复习问题、讨论和编程联系等多种形式,帮助读者巩固该章的知识和技能。

《Python程序设计(第3版)》特色鲜明、示例生动有趣、内容易读易学,适合Python入门程序员阅读,也适合高校计算机专业的教师和学生参考。

作者简介

作者约翰·策勒,美国Wartburg大学数学和计算机系教授。他负责教授Python程序设计课程,并且结合多年的教学经验编写了本书,在美国高校受到普遍的欢迎。他还从事VR、AI等方面的研究,发表了一些机器学习方面的论文。

章节目录

版权信息

内容提要

前言

第2版和第3版的变化

本书主要内容

致谢

第1章 计算机和程序

学习目标

1.1 通用机器

1.2 程序的力量

1.3 什么是计算机科学

1.4 硬件基础

1.5 编程语言

1.6 Python的“魔法”

1.7 Python程序内部

1.8 混沌与计算机

1.9 小结

1.10 练习

复习问题

第2章 编写简单程序

学习目标

2.1 软件开发过程

2.2 示例程序:温度转换器

2.3 程序要素

2.3.1 名称

2.3.2 表达式

2.4 输出语句

2.5 赋值语句

2.5.1 简单赋值

2.5.2 赋值输入

2.5.3 同时赋值

2.6 确定循环

2.7 示例程序:终值

2.8 小结

2.9 练习

复习问题

第3章 数字计算

学习目标

3.1 数值数据类型

3.2 类型转换和舍入

3.3 使用math库

3.4 累积结果:阶乘

3.5 计算机算术的局限性

3.6 小结

3.7 练习

复习问题

第4章 对象和图形

学习目标

4.1 概述

4.2 对象的目标

4.3 简单图形编程

4.4 使用图形对象

4.5 绘制终值

4.6 选择坐标

4.7 交互式图形

4.7.1 获取鼠标点击

4.7.2 处理文本输入

4.8 graphics模块参考

4.8.1 GraphWin对象

4.8.2 图形对象

4.8.3 Entry对象

4.8.4 显示图像

4.8.5 生成颜色

4.8.6 控制显示更新(高级)

4.9 小结

4.10 练习

复习问题

第5章 序列:字符串、列表和文件

学习目标

5.1 字符串数据类型

5.2 简单字符串处理

5.3 列表作为序列

5.4 字符串表示和消息编码

5.4.1 字符串表示

5.4.2 编写编码器

5.5 字符串方法

5.5.1 编写解码器

5.5.2 更多字符串方法

5.6 列表也有方法

5.7 从编码到加密

5.8 输入/输出作为字符串操作

5.8.1 示例应用程序:日期转换

5.8.2 字符串格式化

5.8.3 更好的零钱计数器

5.9 文件处理

5.9.1 多行字符串

5.9.2 文件处理

5.9.3 示例程序:批处理用户名

5.9.4 文件对话框(可选)

5.10 小结

5.11 练习

复习问题

第6章 定义函数

学习目标

6.1 函数的功能

6.2 函数的非正式讨论

6.3 带有函数的终值程序

6.4 函数和参数:令人兴奋的细节

6.5 返回值的函数

6.6 修改参数的函数

6.7 函数和程序结构

6.8 小结

6.9 练习

复习问题

第7章 判断结构

学习目标

7.1 简单判断

7.1.1 示例:温度警告

7.1.2 形成简单条件

7.1.3 示例:条件程序执行

7.2 两路判断

7.3 多路判断

7.4 异常处理

7.5 设计研究:三者最大

7.5.1 策略1:比较每个值和所有其他值

7.5.2 策略2:判断树

7.5.3 策略3:顺序处理

7.5.4 策略4:使用Python

7.5.5 一些经验

7.6 小结

7.7 练习

复习问题

第8章 循环结构和布尔值

学习目标

8.1 for循环:快速回顾

8.2 不定循环

8.3 常见循环模式

8.3.1 交互式循环

8.3.2 哨兵循环

8.3.3 文件循环

8.3.4 嵌套循环

8.4 布尔值计算

8.4.1 布尔运算符

8.4.2 布尔代数

8.5 其他常见结构

8.5.1 后测试循环

8.5.2 循环加一半

8.5.3 布尔表达式作为判断

8.6 示例:一个简单的事件循环

8.7 小结

8.8 练习

复习问题

第9章 模拟与设计

学习目标

9.1 模拟短柄壁球

9.1.1 一个模拟问题

9.1.2 分析与规格说明

9.2 伪随机数

9.3 自顶向下的设计

9.3.1 顶层设计

9.3.2 关注点分离

9.3.3 第二层设计

9.3.4 设计simNGames

9.3.5 第三层设计

9.3.6 整理完成

9.3.7 设计过程总结

9.4 自底向上的实现

9.4.1 单元测试

9.4.2 模拟结果

9.5 其他设计技术

9.5.1 原型与螺旋式开发

9.5.2 设计的艺术

9.6 小结

9.7 练习

复习问题

第10章 定义类

学习目标

10.1 对象的快速复习

10.2 示例程序:炮弹

10.2.1 程序规格说明

10.2.2 设计程序

10.2.3 程序模块化

10.3 定义新类

10.3.1 示例:多面骰子

10.3.2 示例:Projectile类

10.4 用类数据处理

10.5 对象和封装

10.5.1 封装有用的抽象

10.5.2 将类放在模块中

10.5.3 模块文档

10.5.4 使用多个模块

10.6 控件

10.6.1 示例程序:掷骰子程序

10.6.2 创建按钮

10.6.3 构建骰子类

10.6.4 主程序

10.7 动画炮弹

10.7.1 绘制动画窗口

10.7.2 创建ShotTracker

10.7.3 创建输入对话框

10.7.4 主事件循环

10.8 小结

10.9 练习

复习问题

第11章 数据集合

学习目标

11.1 示例问题:简单统计

11.2 应用列表

11.2.1 列表和数组

11.2.2 列表操作

11.2.3 用列表进行统计

11.3 记录的列表

11.4 用列表和类设计

11.5 案例分析:Python计算器

11.5.1 计算器作为对象

11.5.2 构建界面

11.5.3 处理按钮

11.6 案例研究:更好的炮弹动画

11.6.1 创建发射器

11.6.2 追踪多次射击

11.7 无顺序集合

11.7.1 字典基础

11.7.2 字典操作

11.7.3 示例程序:词频

11.8 小结

11.9 练习

复习问题

第12章 面向对象设计

学习目标

12.1 OOD的过程

12.2 案例研究:壁球模拟

12.2.1 候选对象和方法

12.2.2 实现SimStats

12.2.3 实现RBallGame

12.2.4 实现Player

12.2.5 完整程序

12.3 案例研究:骰子扑克

12.3.1 程序规格说明

12.3.2 识别候选对象

12.3.3 实现模型

12.3.4 基于文本的UI

12.3.5 开发GUI

12.4 OO概念

12.4.1 封装

12.4.2 多态

12.4.3 继承

12.5 小结

12.6 练习

复习问题

第13章 算法设计与递归

学习目标

13.1 查找

13.1.1 简单的查找问题

13.1.2 策略1:线性查找

13.1.3 策略2:二分查找

13.1.4 比较算法

13.2 递归问题解决

13.2.1 递归定义

13.2.2 递归函数

13.2.3 示例:字符串反转

13.2.4 示例:重组词

13.2.5 示例:快速指数

13.2.6 示例:二分查找

13.2.7 递归与迭代

13.3 排序算法

13.3.1 天真的排序:选择排序

13.3.2 分而治之:归并排序

13.3.3 排序比较

13.4 难题

13.4.1 汉诺依塔

13.4.2 停机问题

13.4.3 结论

13.5 小结

13.6 练习

复习问题

附录A Python快速参考

第2章 编写简单程序

保留字

内置函数

print函数

输入(数值)

确定循环

第3章 数字计算

数值运算符

导入模块

Math库函数

内置函数

第4章 对象和图形

从模块直接导入

对象构造方法

对象方法调用

第5章 序列:字符串、列表和文件

输入(字符串)

序列操作(字符串和列表)

字符串方法

向列表添加

类型转换函数

字符串格式化

文件处理

第6章 定义函数

函数定义

函数调用

return语句

第7章 判断结构

简单条件

关系操作符

if语句

防止在导入时执行

异常处理

第8章 循环结构和布尔值

for循环

while循环

break语句

布尔表达式

第9章 模拟与设计

random库

第10章 定义类

类定义

文档字符串

第11章 数据集合

序列操作(列表和字符串)

字典

附录B 术语表

Python程序设计(第3版)是2018年由人民邮电出版社出版,作者[美]JohnZelle。

得书感谢您对《Python程序设计(第3版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
Python基础教程(第3版) 电子书

手把手带你从零开始学习Python。
Python编程 电子书

第2版上线,沿袭第1版讲解清晰透彻、循序渐进的特点,并全面升级。
Python少儿趣味编程 电子书

适读人群:任何想要学习Python或初次接触编程的人;Python语言的初学者、计算机专业的学生。尤其适合信息技术课教师或培训机构的老师以及青少年读者(初高中学生)阅读。《Py...
Python算法交易实战 电子书

本书由浅入深地讲解了算法交易的相关知识。
Python编程零基础入门 电子书

9部分全面学编程:基础知识、对象类型、高级概念、现成代码库。
青少年Python编程入门 电子书

快速入门图文并茂,理论与实践相结合,引导读者快速入门轻松上手有趣的文字描述,细致的流程讲解,帮助读者学习程序轻松上手熟练应用精炼的章节回顾,经典的自我评价,帮助读者提高学习成效