附 录 A P y t h o n 快 速 参 考

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_Python

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_02

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_算法_03

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_Python_04

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_python_05

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_算法_06

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_算法_07

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_Python_08

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_Python_09

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_10

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_字符串_11

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_12

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_字符串_13

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_python_14

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_15

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_Python_16

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_17

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_18

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_算法_19

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_Python_20

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_算法_21

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_22

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_算法_23

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_python_24

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_数据类型_25

python程序设计教程第三版教程课后习题答案 python程序设计第3版pdf_python_26

附 录 B 术 语 表

1 abstraction:抽象 隐藏或忽略一些细节,从而专注于那些相关的信息。
 2 accessor method:访问器方法 返回一个或多个对象的实例变量,但不修改对象的值的方法。
 3 accumulator pattern:累积器模式 一种常见的编程模式,在这种模式中,最终的结果在循环中每次构建一部分。
 4 accumulator variable:累积器变量 在累积器编程模式中,用于保存结果的变量。
 5 actual parameter:实参 调用时传递给函数的值。
 6 algorithm:算法 执行某个过程的详细步骤顺序。类似菜谱。
 7 aliasing:别名 两个或多个变量指向完全相同的对象的情况。如果对象是可变的,则通过一个变量进行的更改将被其他变量所看到。
 8 analysis:分析:(1)在软件开发生命周期的上下文中,指研究一个问题,并弄清楚计算机程序可以怎样解决它。(2)以数学方式研究问题或算法,确定它的某些属性,如时间效率。
 9 and:一个二进制布尔运算符,当它的两个子表达式都为真时返回真。
 10 application programming interface (API):应用程序编程接口(API) 库模块提供的功能的规格说明。程序员需要了解 API 才能使用模块。
 11 argument:参数 一个实参。
 12 array:数组 可以通过索引访问的类似对象的集合。通常,数据是固定大小和同质的(所有元素都是相同类型的)。请与列表比较。
 13 ASCII:美国信息交换标准代码 用于编码文本的标准,其中每个字符由数字 0~127 表示。
 14 assignment:赋值 将值赋给变量的过程。
 15 associative array:关联数组 包含值与键的关联的集合。在 Python 中被称为字典。
 16 attributes:属性 对象的实例变量和方法。
 17 base case:基本情况 在递归函数或定义中,不需要递归的情况。所有正确的递归必须有一个或多个基本情况。
 18 batch:批处理 通过文件而不是交互式进行输入和输出的处理模式。
 19 binary:二进制 以 2 为基数的数字系统,其中仅有数字 0 和 1。
 20 binary search:二分查找 一种用于在已排序集合中确定数据项的非常有效的搜索算法。需要的时间与 log 2 n 成正比,其中 n 是集合的大小。
 21 bit:位 二进制数字。信息的基本单位,通常用 0 和 1 表示。
 22 body:语句体 一个控制结构中的语句块的通用术语,如循环或判断。
 23 Boolean algebra:布尔代数 布尔表达式简化和重写的规则。
 24 Boolean expression:布尔表达式 一个事实陈述。布尔表达式将求值为 true 或 false。
 25 Boolean logic:布尔逻辑 参见“布尔代数”。
 26 Boolean operations:布尔运算符 用于构造布尔表达式的连接符。在 Python 中有 and、or 和 not。
 27 bug:缺陷 程序中的错误。
 28 butterfly effect:蝴蝶效应 自然界动力系统的一个典型例子(混沌)。一般相信,像蝴蝶扇动翅膀一样小的事件可以显著影响随后的大规模天气模式。
 29 byte code:字节码 计算机语言的中间形式。高级语言有时被编译成字节码,然后被解释。在 Python 中,具有 pyc 扩展名的文件是字节码。
 30 call:调用 调用函数定义的过程。
 31 central processing unit (CPU):中央处理单元(CPU) 执行数字和逻辑操作的计算机的“大脑”。
 32 cipher alphabet:密码字母表 用于加密消息的符号。
 33 ciphertext:密文 消息的加密形式。
 34 class:类 描述一组相关对象。Python 中的类机制被用作“工厂”来生成对象。
 35 client:客户端 在编程中,与另一个组件接口的模块称为组件的客户端。
 36 code injection:代码注入 一种计算机攻击的形式,即恶意用户将计算机指令引入执行程序中,导致应用程序偏离其原始设计。
 37 coding:编码 将算法转换成计算机程序的过程。
 38 comment:注释 放在程序中的文本,为人类读者带来好处。计算机将忽略注释。
 39 compiler:编译器 将一个以高级语言编写的程序转换为可由特定计算机执行的机器语言的复杂程序。
 40 computer:计算机 一种在可更改程序控制下存储和操纵信息的机器。
 41 computer science:计算机科学 研究可以计算什么的一种科学。
 42 conditional:条件 决策控制结构的另一个术语。
 43 constructor:构造函数 创建一个新对象的函数。在 Python 类中,是__init__方法。
 44 control codes:控制代码 不打印的特殊字符,但用于交换信息。
 45 control structure:控制结构 控制其他语句执行的编程语言语句(例如 if 和 while)。
 46 coordinate transformation:坐标变换 在图形编程中,将点或点集从一个坐标系转换到相关坐标系的数学。
 47 counted loop:计数循环 迭代特定次数的循环。
 48 CPU:参见“中央处理单元”。
 49 cryptography:密码学 研究编码信息技术,以保证其安全。
 50 data:数据 计算机程序操作的信息。
 51 data type:数据类型 表示数据的特定方式。数据项的数据类型确定它可以具有什么值以及它支持哪些操作。
 52 debugging:调试 确定和消除程序中错误的过程。
 53 decision structure:判断结构 一种允许程序的不同部分根据具体情况执行的控制结构。通常判断由布尔表达式控制。
 54 decision tree:判断树 一个复杂的判断结构,其中初始判断分支为更多的判断,后者又分支到更多的判断,以一种层叠的方式出现。
 55 definite loop:确定循环 一种在循环开始执行时已知循环次数的循环。
 56 design:设计 开发可以解决一些问题的系统的过程。也是该过程的产物。
 57 dictionary:字典 一个无序的 Python 集合对象,允许值与任意键相关联。
 58 docstring:文档字符串 Python 中的文档技术,它将一个字符串与程序组件相关联。
 59 empty string:空字符串 一个对象,具有字符串数据类型,但不包含字符(“”)。
 60 encapsulation:封装 隐藏某物的细节。通常是用来界定对象或函数的实现和使用之间区别的术语。细节被封装在定义中。
 61 encryption:加密 为保持私密而编码信息的过程。
 62 end-of-file loop:文件结束循环 用于逐行读取文件的编程模式。
 63 event:事件 在 GUI 编程中,外部动作(如鼠标点击)导致某些程序发生。也用于描述创建的对象,它封装了关于事件的信息。
 64 event-driven:事件驱动 程序的一种风格,其中程序等待事件发生并进行相应的响应。这种方法经常用于图形用户界面(GUI)编程。
 65 exception handling:异常处理 一种编程语言机制,允许程序员优雅地处理程序运行时检测到的错误。
 66 execute:执行 运行程序或程序段。
 67 exponential time:指数时间 一种算法,需要的步骤数正比于一个函数,其中问题的规模作为指数出现。这种算法通常被认为是难解的。
 68 expression:表达式 生成数据的程序部分。
 69 fetch-execute cycle:提取执行周期 计算机执行机器代码程序的过程。
 70 float:浮点型 表示具有小数值的数字的数据类型。
 71 flowchart:流程图 程序或算法中控制流的图形描述。
 72 function:函数 程序中的子程序。函数将参数作为输入并返回值。
 73 functional decomposition:函数分解 参见“自顶向下的设计”。
 74 garbage collection:垃圾收集 由动态编程语言(如 Python、Lisp、Java)执行的过程。在这个过程中,包含不再使用的值的存储器空间被释放,以便它们可以存储新值。
 75 graphical user interface (GUI):图形用户界面(GUI) 与计算机应用程序的交互风格,涉及大量使用图形组件(如窗口、菜单和按钮)。
 76 graphics window:图形窗口 可以绘制图形的屏幕窗口。
 77 GUI:参见图形用户界面。
 78 halting problem:停机问题 一个著名的无法解决的问题。 一个程序,确定另一个程序是否会在给定的输入下停机。
 79 hardware:硬件 计算系统的物理组件。如果你将它从窗口中扔出去,它会“坏”,那就是硬件。
 80 hash:散列 关联数组或字典的另一个术语。
 81 hello, world:无处不在的第一个计算机程序。
 82 heterogeneous:异质 能够同时包含不止一种数据类型。例如 Python 列表。
 83 homogeneous:同质 只能持有一种类型的值。
 84 identifiers:标识符 给予程序实体的名称。
 85 if statement:if 语句 用于在程序中执行判断的控制结构。
 86 import statement:import 语句 让外部库模块可用于程序中的语句。
 87 indefinite loop:不定循环 在循环开始执行时,不需要知道所需迭代次数的循环。
 88 indexing:索引 根据序列中的相对位置从序列中选择一个数据项。
 89 infinite loop:无限循环 不终止的循环。参见“循环,无限”。
 90 inheritance:继承 定义一个新类作为另一个类的特例。
 91 input, process, output:输入、处理、输出 一个通用的编程模式。程序提示输入、处理并输出响应。
 92 input validation:输入验证 在使用用户提供的值进行计算之前,检查这些值以确保它们有效的过程。
 93 instance:实例 某个类的特定对象。
 94 instance variable:实例变量 存储在对象内的一条数据。
 95 int:用于表示没有小数部分的数字的数据类型。int 是整数的缩写,代表固定位数(通常为 32)的数字。
 96 integer:整数 正或负整数。参见 int。
 97 interactive loop:交互式循环 允许程序的一部分根据用户的意愿重复的循环。
 98 interface:接口 两个组件之间的连接。对于函数或方法,该接口由函数的名称、其参数和返回值组成。对于一个对象,它是用于操作对象的一组方法(及其接口)。术语用户接口(界面)用于描述人们如何与计算机应用程序交互。
 99 interpreter:解释器 一种计算机程序,用于模拟理解高级语言的计算机的行为。它逐个执行源代码行,并执行操作。
 100 intractable:难解的 难以在实践中解决,通常是因为需要太长时间。
 101 invoke:调用 利用函数。
 102 iterate:迭代多次执行。循环体的每次执行被称为一次迭代。
 103 key:密钥,键 (1)在加密中,编码或解码消息必须知道的特殊值。(2)在数据收集的上下文中,指一种在字典中查找值的方法。值与将来访问的键相关联。
 104 lexicographic:词典序 与字符串排序有关。词典序就像字母顺序,但是基于字符串字符的底层数字代码。
 105 library:库 可以在程序中导入和使用的有用函数或类的外部集合。例如,Python 的数学和字符串模块。
 106 linear search:线性搜索 一种搜索过程,依次检查集合中的数据项。
 107 linear time algorithm:线性时间算法 一种算法,需要的步骤数正比于输入问题的规模。
 108 list:列表 用于表示顺序集合的一般 Python 数据类型。列表是异质的,可以根据需要增长和收缩。数据项通过下标访问。
 109 literal:字面量 用编程语言编写特定值的符号。例如,3 是一个 int 字面量,“Hello”是一个字符串字面量。
 110 local variable:局部变量 一个函数中定义的变量。它只能在函数定义中被引用。参见“范围”。
 111 log time algorithm:对数时间算法 一种算法,需要的步骤数正比于输入问题规模的对数。
 112 loop and a half:循环加一半 一种循环结构,在循环体的中间有某个出口。在 Python中,这是通过 while True:/break 组合来实现的。
 113 loop:循环 用于多次执行程序部分的控制结构。
 114 loop index:循环索引 一个用于控制循环的变量。在语句 for i in range(n)中,i 被用作循环索引。
 115 loop, infinite:循环,无限 参见“无限循环”。
 116 machine code:机器代码 机器语言程序。
 117 machine language:机器语言 给定 CPU 可以执行的低级(二进制)指令。
 118 main memory:主存储器 CPU 当前处理的所有数据和程序指令所在的位置。也称为随机存取存储器(RAM)。
 119 mapping:映射 键和值之间的一般关联。Python 字典实现了映射。
 120 merge:归并 将两个排序列表合并为单个排序列表的过程。
 121  merge sort:归并排序 一种有效的分而治之排序算法。
 122 meta-language:元语言 用于描述计算机语言语法的符号。
 123 method:方法 一个位于对象内的函数。通过调用对象的方法来操纵对象。
 124 mixed-typed expression:混合类型表达式 涉及多个数据类型的表达式。通常用于在数学计算中组合整型和浮点型的上下文中。
 125 model-view architecture:模型—视图架构 通过将问题(模型)与用户界面(视图)分开来分割 GUI 程序。
 126 modal:模态 如果窗口或对话框要求用户以某种方式与它进行交互,然后才能继续使用生成它的应用程序,它就是模态的。
 127 modular:模块化 由多个相对独立的部件组成,可以协同工作。
 128  module:模块 一般来说,指程序的任何相对独立的部分。在 Python 中,该术语也用于表示可以导入和执行的包含代码的文件。
 129 module hierarchy chart:模块层次结构图 显示程序的功能分解结构的图。两个组件之间的连线表示上面组件利用下面组件来完成它的任务。
 130 Monte Carlo:蒙特卡罗 一种涉及概率(随机或伪随机)原理的模拟技术。
 131 mutable:可变的 可以改变的。可以改变状态的对象是可变的。Python 的 int 和 string不可变,但列表是。
 132 mutator method:设值方法 改变对象状态(即修改一个或多个实例变量)的方法。
 133 n log n algorithm: n log n 算法 算法需要的步骤数正比于输入规模乘以输入规模的对数。
 134 n-squared algorithm:n 平方算法 算法需要的步骤数正比于输入规模的平方。
 135 name error:名称错误 当 Python 被要求为尚未分配值的变量生成值时发生的异常。
 136 namespace:命名空间 标识符与它们在程序中表示的东西之间的关联。在 Python 中,模块、类和对象起到命名空间的作用。
 137 nesting:嵌套 将一个控制结构放在另一个中的过程。循环和判断可以任意嵌套。
 138 newline:换行符 标记文件或多行字符串中行之间分隔的特殊字符。在 Python 中,它表示为“\ n”。
 139 not 一元布尔运算符,用于否定表达式。
 140 object:对象 具有一些数据和一组操纵这些数据的程序实体。
 141  object-based:基于对象 设计和编程使用对象作为抽象的主要形式。
 142 object-oriented:面向对象 基于对象的设计或编程,并且包括多态性和继承的特征。
 143 open:打开 将辅助存储器中的文件与程序中的变量相关联的过程,通过该变量可以对文件进行操作。
 144 operator:运算符 用于将表达式组合成更复杂表达式的函数。
 145 or 一个二进制布尔运算符,当任一个或两个子表达式为真时返回 true。
 146 override:覆写 一个术语,表示子类改变继承方法的行为。
 147 parameters:参数 函数中的特殊变量,在函数调用时用从调用者传入信息来初始化。
 148 pass by value:按值传递
 149 Python 中使用的参数传递技术。形参被赋予来自实参的值。函数不能更改实参变量引用的对象。
 150 pass by reference:按引用传递 一些计算机语言中使用的参数传递技术,允许被调用函数更改用作实参的变量的值。
 151 pixel:像素 图像元素的缩写。图形显示器上的一个点。
 152 plaintext:明文 在加密中,这是用于未编码消息的术语。
 153 polymorphism:多态性 字面上是“很多形式”。在面向对象编程中,指根据所涉及对象的数据类型,特定代码行可以通过不同的方法来实现的能力。
 154 portability:可移植性 能够在不同的系统上运行程序。
 155 post-test loop:后测试循环 一个循环结构,其中循环条件在循环体被执行之后才被测试。
 156 pre-test loop:预测试循环 一个循环结构,其中循环条件在执行循环体之前被测试。
 157 precision:精度 数中的精确数字的个数。
 158 priming read:启动读取 在哨兵循环中,在循环条件测试之前进行读取。
 159 private key:私钥 一种加密方式,其中相同的密钥用于加密和解密,因此必须保密。
 160 program:程序 一组详细的指令,由计算机执行。
 161 programming:编程 创建计算机程序来解决一些问题的过程。
 162 programming environment:编程环境 一种特殊的计算机程序,提供让编程更容易的功能。IDLE(在标准 Python 分行版中)是一个简单的编程环境的例子。
 163 programming language:编程语言 编写计算机程序的符号。通常指高级语言,如Python、Java、C ++等。
 164 prompt:提示 一条打印消息,告诉程序的用户需要输入。
 165 prototype:原型 程序的初始简化版本。
 166 pseudocode:伪代码 用精确的自然语言编写算法,而不是计算机语言的符号。
 167 pseudo-random:伪随机序列 由计算机算法生成并用于模拟随机事件。
 168 public key:公钥 一种使用两种不同密钥的加密形式。用公钥编码的消息只能使用另一个私钥进行解码。
 169 random access memory (RAM):随机存取存储器(RAM) 参见“主存储器”。
 170 random walk:随机行走 一种模拟过程,其中某些对象的运动是概率确定的。
 171 read:读取 用于描述计算机输入的术语。我们说一个程序从键盘或文件读取信息。
 172 record:记录 关于单个人或对象的信息的集合。例如,人事记录包含有关员工的信息。
 173  recursive:递归 具有引用自身的特点(函数或定义)。
 174 recursive function:递归函数 直接或间接调用自身的函数。参见“递归”。
 175 relational operator:关系运算符 在值之间进行比较,并返回 true 或 false 的运算符(如<,<=,==,> =,>,!=)。
 176 reserved words:保留字 作为语言内置语法一部分的标识符。
 177 resolution:分辨率 图形屏幕上的像素数。通常以水平和垂直方式表示(例如 640像素×480 像素)。
 178 RGB value:RGB 值 表示颜色的三个数字(通常在 0~255 范围内),表示像素的红色、绿色和蓝色分量的亮度。
 179 scope:范围 可以引用给定变量的程序的区域。例如,在函数中定义的变量被认为具有局部范围。
 180 script:脚本 程序的另一个名称。通常指以一种解释型语言编写的相对简单的程序。
 181 search:搜索 在集合中确定特定数据项的过程。
 182 secondary memory:辅助存储器 通用术语,指的是非易失性存储设备,如硬盘、磁盘、磁带、CD-ROM、DVD 等。
 183 seed:种子 用于开始生成伪随机序列的值。
 184  selection sort:选择排序 n 平方时间的排序算法。
 185 self parameter:self 参数 在 Python 中,方法的第一个参数。它是对应用该方法的对象的引用。
 186 semantics:语义 结构的意义。
 187 sentinel:哨兵 一个特殊值,用于表示一系列输入的结尾。
 188 sentinel loop:哨兵循环 一直持续到遇到特殊值的循环。
 189 short-circuit evaluation:短路求值 一个求值过程,一旦结果被知道就返回答案,而不一定要求值所有的子表达式。在表达式(True or isover())中,isover()函数不会被调用。
 190 signature:签名 函数接口的另一个术语。签名包括名称、参数和返回值。
 191 simulation:模拟 一个旨在抽象地模拟一些现实世界过程的程序。
 192 simultaneous assignment:同时赋值 允许在一个步骤中对多个变量赋值的语句。例如,x,y = y,x 交换两个变量。
 193 slicing:切片 提取字符串、列表或其他序列对象的子序列。
 194 software:软件 计算机程序。
 195 sorting:排序 将一系列数据项按预先确定的顺序排列的过程。
 196 source code:源代码 高级语言的程序文本。
 197 spiral design:螺旋式设计 通过首先设计一个简化的原型,然后逐渐添加特征来创建一个系统。
 198 statement:语句 编程语言中的单个命令。
 199 step-wise refinement:逐步求精 从一个非常高层次的抽象描述开始,逐步增加细节,设计一个系统的过程。
 200 string:字符串 用于表示字符序列(文本)的数据类型。
 201 structure chart:结构图 参见“模块层次图”。
 202 subclass:子类 当一个类继承自另一个类时,继承类被称为被继承类的子类。
 203 substring:子字符串 字符串中连续字符的序列。参见“切片”。
 204 superclass:超类 被继承的类。
 205 syntax:语法 语言的形式。
 206 tkinter Python 附带的标准 GUI 框架。本书中使用的 graphics.py 模块是基于该框架。
 207  top-down design 自顶向下的设计:通过以非常高级的算法开始构建系统的过程,该算法描述了子程序的解决方案。然后依次设计每个子程序。该过程的其他名称是“逐步求精”和“函数分解”。
 208 truth table:真值表 表示其子表达式的值的所有可能组合的布尔表达式的值。
 209 tuple:元组 一个 Python 序列类型,像一个不可变的列表。
 210 unary:一元操作符 作用于单个操作数的操作符。
 211 unicode:一种替代 ASCII,用于编码来自世界所有世界书面语言的字符。 Unicode 被设计为与 ASCII 兼容。
 212 unit testing:单元测试 测试独立于其他部分的程序组件。
 213 unpack:解包 在 Python 中,将序列中的项目赋值给独立变量。例如,可以将两个值的列表或元组解包给变量 x,y = myList。
 214 variable:变量 标识一个值以供将来引用的标识符。变量的值可以通过赋值来改变。
 215 widget:控件 GUI 中的用户界面组件。
 216 write:写入 输出信息的过程。例如,我们说数据被写入文件。