注册 登录 进入教材巡展
#
  • #

出版时间:2025-10-29

出版社:机械工业出版社

以下为《Python语言程序设计(基础篇)(原书第3版)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 机械工业出版社
  • 9787111792529
  • 1-1
  • 2025-10-29
  • 842
内容简介
本书首先介绍Python基础知识,在带领读者编写自定义类之前,先介绍关于选择结构、循环结构和函数的基本编程概念和技术。然后介绍如何使用Python解决问题。不同难度的练习和问题涵盖了多个有趣的应用领域。本书包含大量练习题,指导读者创建高效、优雅的代码,在实践中掌握编程技巧。第3版新增了关于数据结构的内容,并更新了大量示例和练习。
目录
译者序
前言
作者简介
第1章 计算机、程序和Python简介  1
1.1 概述  1
1.2 什么是计算机  2
1.2.1 中央处理器  2
1.2.2 二进制位和字节  3
1.2.3 内存  3
1.2.4 存储设备  4
1.2.5 输入设备和输出设备  5
1.2.6 通信设备  5
1.3 程序设计语言  6
1.3.1 机器语言  6
1.3.2 汇编语言  6
1.3.3 高级语言  7
1.4 操作系统  8
1.4.1 控制和监测系统活动  8
1.4.2 分配和安排系统资源  8
1.4.3 调度计划任务  8
1.5 Python的发展历史  9
1.6 Python入门  9
1.6.1 启动Python  10
1.6.2 创建Python源代码文件  11
1.6.3 使用Python执行数学计算  13
1.7 程序设计风格和文档  13
1.7.1 适当的注释和注释风格  14
1.7.2 适当的间距  14
1.8 程序设计错误  14
1.8.1 语法错误  14
1.8.2 运行时错误  15
1.8.3 逻辑错误  15
1.9 图形程序设计入门  16
1.9.1 绘制图形并为图形添加颜色  16
1.9.2 将画笔移动到任何位置  18
1.9.3 绘制奥运五环徽标  19
关键术语  20
本章总结  21
编程练习  21
第2章 程序设计初步  26
2.1 概述  26
2.2 编写一个简单的程序  26
2.3 从控制台读取输入  28
2.4 标识符  30
2.5 变量、赋值语句和表达式  31
2.6 同时赋值  32
2.7 命名常量  32
2.8 数值数据类型和运算符  33
2.8.1 运算符/、//和**  34
2.8.2 运算符%  34
2.8.3 科学记数法  36
2.9 案例研究:零钱兑换  36
2.10 表达式求值以及运算符优先级  38
2.11 复合赋值运算符  39
2.12 类型转换和数值舍入  39
2.13 案例研究:显示当前时间  41
2.14 软件开发过程  42
2.15 案例研究:计算距离  45
关键术语  48
本章总结  48
编程练习  48
第3章 选择结构  59
3.1 概述  59
3.2 布尔类型、布尔值和布尔表达式  60
3.3 生成随机数  61
3.4 if语句  62
3.5 双分支if-else语句  64
3.6 嵌套的if语句和多分支if-elif-else语句  66
3.7 选择语句中的常见错误  69
3.8 案例研究:计算体重指数  71
3.9 案例研究:计算个人所得税  72
3.10 逻辑运算符  74
3.11 案例研究:判断闰年  77
3.12 案例研究:彩票抽奖  77
3.13 条件表达式  79
3.14 Python 3.10版本中的match-case
语句  79
3.15 运算符优先级和结合性  81
3.16 检测目标的位置  82
关键术语  84
本章总结  84
编程练习  84
第4章 数学函数、字符串和对象  101
4.1 概述  101
4.2 常用的Python函数  102
4.3 字符串和字符  107
4.3.1 ASCII码和统一码  108
4.3.2 函数ord和chr  109
4.3.3 特殊字符的转义序列  109
4.3.4 不使用换行符进行打印  110
4.3.5 str函数  111
4.3.6 拼接和重复运算符  111
4.3.7 从控制台读取字符串  112
4.3.8 in和not in运算符  112
4.3.9 比较字符串  113
4.3.10 字符串函数  114
4.3.11 索引运算符  115
4.3.12 切片运算符  116
4.4 案例研究:使用字符串改进彩票
抽奖程序  116
4.5 对象和方法简介  117
4.6 字符串方法  118
4.6.1 查找和统计子字符串  120
4.6.2 转换字符串  121
4.6.3 从字符串中去除空白字符  122
4.7 案例研究  123
4.7.1 问题:猜测生日  123
4.7.2 问题:将十六进制数字转换
为十进制值  126
4.8 格式化数值和字符串  127
4.8.1 格式化浮点数  128
4.8.2 格式化为科学记数法  129
4.8.3 格式化为百分比  129
4.8.4 对齐格式  129
4.8.5 格式化整数  130
4.8.6 格式化字符串  130
4.8.7 F-字符串  132
4.9 绘制各种不同类型的形状  133
4.10 使用颜色和字体进行绘制  135
关键术语  137
本章总结  138
编程练习  138
第5章 循环结构  149
5.1 概述  149
5.2 while循环  150
5.3 案例研究:猜数游戏  152
5.4 循环设计策略  155
5.5 使用用户确认和哨兵值控制循环  157
5.6 for循环  159
5.7 嵌套循环  160
5.8 最小化数值误差  161
5.9 案例研究  162
5.9.1 问题:寻找最大公约数  162
5.9.2 问题:预测未来学费  164
5.9.3 问题:将十进制转换为十六
进制  165
5.10 关键字break和continue  166
5.11 案例研究:测试回文  168
5.12 案例研究:显示素数  170
5.13 案例研究:随机游走  172
关键术语  174
本章总结  174
编程练习  174
第6章 函数  189
6.1 概述  189
6.2 定义函数  190
6.3 调用函数  191
6.4 返回值的函数和不返回值的函数  194
6.5 位置参数和关键字参数  196
6.6 按引用值传递参数  197
6.7 模块化编码  198
6.8 变量的作用域  201
6.9 默认参数  203
6.10 返回多个值  204
6.11 案例研究:随机生成ASCII字符  205
6.12 案例研究:十六进制转换为
十进制  206
6.13 案例研究:函数抽象和逐
步求精  208
6.13.1 自顶向下的设计方法  209
6.13.2 自顶向下和/或自底向上的
实现方法  211
6.13.3 实现细节  211
6.13.4 逐步求精的优越性  214
6.14 案例研究:可重用的图形
函数  214
关键术语  217
本章总结  217
编程练习  218
第7章 列表  235
7.1 概述  235
7.2 列表基础  236
7.2.1 列表是一个序列  236
7.2.2 列表的函数  237
7.2.3 索引运算符   237
7.2.4 列表切片  238
7.2.5 运算符+、+=、*和in/
not in  239
7.2.6 使用for循环遍历列表元素  239
7.2.7 比较列表  240
7.2.8 列表解析  240
7.2.9 列表对象的方法  241
7.2.10 将字符串拆分为列表  242
7.2.11 输入列表  242
7.2.12 列表中数据的偏移  243
7.2.13 使用列表简化编码  243
7.2.14 Python统计函数  243
7.3 案例研究:分析数值  244
7.4 案例研究:一副扑克牌  245
7.5 复制列表  247
7.6 将列表传递给函数  248
7.7 从函数中返回列表  250
7.8 案例研究:统计每个字母出现
的次数  251
7.9 列表查找  253
7.9.1 线性查找方法  253
7.9.2 二分查找方法  254
7.10 列表排序  257
关键术语  258
本章总结  258
编程练习  259
第8章 多维列表  272
8.1 概述  272
8.2 处理二维列表  273
8.2.1 使用输入值初始化列表  273
8.2.2 使用随机值初始化列表  273
8.2.3 打印列表  273
8.2.4 计算所有元素之和  274
8.2.5 按列计算元素之和  274
8.2.6 查找元素之和最大的行  274
8.2.7 随机混排  274
8.2.8 排序  275
8.3 将二维列表传递给函数  275
8.4 问题:对单项选择题进行评分  276
8.5 问题:寻找距离最近的点对  277
8.6 问题:数独游戏  280
8.7 多维列表  284
8.7.1 案例研究:每日温度和湿度  284
8.7.2 案例研究:猜测生日  286
关键术语  287
本章总结  287
编程练习  288
第9章 对象和类  308
9.1?概述  308
9.2?定义对象的类  308
9.2.1?定义类  309
9.2.2?构造对象  310
9.2.3?访问对象成员  311
9.2.4?self参数  312
9.2.5?示例:使用类  313
9.2.6?对象与变量以及复制对象  314
9.3?UML类设计  314
9.4?使用Python库中的类:datetime
类  317
9.5?不可变对象与可变对象  318
9.6?隐藏数据字段  320
9.7?类的抽象和封装  321
9.8?面向对象的程序设计思维  325
9.9?运算符重载和特殊方法  327
9.10?案例研究:Rational类  329
关键术语  333
本章总结  333
编程练习  334
第10章 基于Tkinter的GUI编程
基础  345
10.1 概述  345
10.2 Tkinter入门  345
10.3 处理事件  346
10.4 组件类  348
10.5 Canvas  353
10.6 几何图形管理器  356
10.6.1 grid   356
10.6.2 pack  357
10.6.3 place  358
10.7 案例研究:贷款计算器  359
10.8 案例研究:数独GUI  360
10.9 显示图像  362
10.10 案例研究:扑克牌GUI  364
关键术语  365
本章总结  365
编程练习  365
第11章 基于Tkinter的GUI高级
编程  373
11.1 概述  373
11.2 组合框  373
11.3 菜单  375
11.4 弹出菜单  377
11.5 鼠标事件、键盘事件和事件
绑定  378
11.6 案例研究:查找距离最近的
点对  382
11.7 动画  383
11.8 案例研究:弹跳的小球  386
11.9 滚动条  389
11.10 标准对话框  390
关键术语  391
本章总结  391
编程练习  392
第12章 继承和多态性  399
12.1 概述  399
12.2 超类和子类  399
12.3 重写方法  404
12.4 object类  405
12.5 多态性和动态绑定  406
12.6 isins?tance函数  408
12.7 案例研究:可重用的时钟  410
12.8 类关系  414
12.8.1 关联  414
12.8.2 聚合和组合  416
12.9 案例研究:设计Course类  417
12.10 案例研究:设计一个用于
栈的类  419
12.11 案例研究:FigureCanvas
类  421
关键术语  424
本章总结  424
编程练习  424
第13章 文件和异常处理  437
13.1 概述  437
13.2 文本输入和输出  438
13.2.1 打开一个文件  438
13.2.2 写入数据  439
13.2.3 测试一个文件的存在性  441
13.2.4 读取数据  441
13.2.5 从文件中读取海量数据  444
13.2.6 附加数据  446
13.2.7 数值数据的写入和读取  447
13.3 文件对话框  447
13.4 案例研究:统计一个文件中的
字符数  451
13.5 从网上读取数据  452
13.6 异常处理  453
13.7 抛出异常  456
13.8 使用异常类处理异常  459
13.9 定义自定义异常类  460
13.10 案例研究:网络爬虫  462
13.11 使用pickle执行二进制输入
和输出  464
13.11.1 转储和加载对象  465
13.11.2 检测文件末尾  465
13.12 案例研究:地址簿  467
关键术语  470
本章总结  470
编程练习  470
第14章 元组、集合和字典  475
14.1 概述  475
14.2 元组  476
14.3 集合  478
14.3.1 创建集合  478
14.3.2 操作和访问集合  479
14.3.3 子集和超集  479
14.3.4 相等性测试  480
14.3.5 集合操作  480
14.4 比较集合和列表的性能  482
14.5 案例研究:统计关键字  484
14.6 字典  485
14.6.1 创建字典  485
14.6.2 添加、修改和检索值  486
14.6.3 删除字典中的数据项  487
14.6.4 遍历字典的数据项  487
14.6.5 len、max和min函数  487
14.6.6 测试键是否位于字典中  487
14.6.7 相等性测试  488
14.6.8 字典对象的方法  488
14.7 案例研究:单词出现的次数  489
关键术语  491
本章总结  491
编程练习  491
附录A Python关键字  496
附录B ASCII字符集  497
附录C 数制系统  498
附录D 命令行参数  503
附录E 正则表达式  506
附录F 位运算操作  512
附录G 大O表示法、大Ω表示法和
大Θ表示法  513
附录H 运算符的优先顺序表  514