chapter3
函数(function):一个有名称的语句序列,可以进行某种有用的操作。函数可以接收或者不接收参数,可以返回或不返回结果。
函数定义(function definition):一个用来创建新函数的语句,指定函数的名称、参数以及它所包含的语句序列。
函数对象(function object):函数定义所创建的值。函数名可以用作变量来引用一个函数对象。
函数头(header):函数定义的第一行。
函数体(body):函数定义内的语句序列。
形参(parameter):函数内使用的用来引用作为实参传入的值的名称。
函数调用(function call):运行一个函数的语句。它由函数名称和括号中的参数列表组成。
实参(argument):当函数调用时,提供给它的值。这个值会被赋值给对应的形参。
局部变量(local variable):函数内定义的变量。局部变量只能在函数体内使用。
返回值(return value):函数的结果。如果函数被当作表达式调用,返回值就是表达式的值。
有返回值函数(fruitful function):返回一个值的函数。
无返回值函数(void function):总是返回None的函数。
None:由无返回值函数返回的一个特殊值。
模块(module):一个包含相关函数以及其他定义的集合的文件。
import语句(import statement):读入一个模块文件,并创建一个模块对象的语句。
模块对象(module object):使用import 语句时创建的对象,提供对模块定义的值的访问。
句点表示法(dot notation):调用另一个模块中的函数的语法,使用模块名加上一个句点符号,再加上函数名。
组合(composition):使用一个表达式作为更大的表达式的一部分,或者使用语句作为更大的语句的一部分。
执行流程(flow of execution):语句执行的顺序。
栈图(stack diagram):函数栈的图形表达形式,也展示它们的变量,以及这些变量引用的值。
图框(frame):栈图中的一个图框,表达一个函数调用。它包含了局部变量以及函数的参数。
回溯(traceback):当异常发生时,打印出正在执行的函数栈。
chapter4
方法(method):与某个对象相关联的一个函数,使用句点表达式调用。
循环(loop):程序中的一个片段,可以重复运行。
封装(encapsulation):将一组语句转换成函数定义的过程。
泛化(generalization):将一些不必要的具体值(如一个数字)替换为合适的通用参数或变量的过程。
关键词参数(keyword argument):调用函数时,附带了参数名称(作为一个"关键词"来使用)的参数。
接口(interface):描述函数如何使用的说明。包括函数的名称,以及形参与返回值的说明。
重构(refactoring):修改代码并改善函数的接口以及代码质量的过程。
开发计划(development plan):写程序的过程。
文档字符串(docstring):在函数定义开始处出现的用于说明函数接口的字符串。
前置条件(precondition):在函数调用开始前应当满足的条件。
后置条件(postcondition):在函数调用结束后应当满足的条件。
chapter5
向下取整除法(floor division):用//表示的操作符,用于将两个数相除,并对结果进行向下取整(靠近0取整),得到整数结果。
求模操作符(modulus operator):用%表示的操作符,用于两个整数,返回两个整数相除的余数。
布尔表达式(boolean expression):一种表达式,其值是True或False.
关系操作符(relational operator):用来表示两个操作对象的比较关系的操作符,如下之一:==、!=、>、<、>=和<=。
逻辑操作符(logical operator):用来组合两个布尔表达式的操作符,有三个:and、or 和 not。
条件语句(conditional statement):依照某些条件控制程序执行流程的语句。
条件(condition):条件语句中的布尔表达式,由他决定执行哪一个分支。
复合语句(compound statement):一个包含语句头和语句体的语句。语句头以冒号(:)结尾。语句体相对语句头缩进一层。
分支(branch):条件语句中的一个可能性分支语句段。
条件链语句(chained condition):一种包含多个分支的条件语句。
嵌套条件语句(nested condition):在其他条件语句的分支中出现的条件语句。
返回语句(return statement):导致一个函数立即结束并返回到调用者的语句。
递归(recursion):在当前函数中调用自己的过程。
基准情形(base case):递归函数中的一个条件分支,里面不会再继续递归调用。
无限递归(infinite recursion):没有基准情形的递归,或者永远无法达到基准情形的分支的递归调用。最终,这种无限递归会导致运行时错误。
Chapter6
临时变量(temporary variable):在复杂计算中用于保存中间计算值的变量。
无效代码(dead code):程序中的一些代码,用于不可能运行。常常是写在return语句之后的代码。
增量开发(incremental development):一个程序开发计划,但在最终版本中不需要的代码。
脚手架代码(scaffolding):在开发过程中使用的,但在最终版本中不需要的代码。
守卫(guardian):一个编程模式。使用条件语句来检查并处理可能产生错误的情形。
chapter7
重新赋值(reassignment):对一个已经存在的变量赋予一个新值。
更新(update):一种赋值操作,新值依赖于变量的旧值。
初始化(initialization):一种赋值操作,给变量一个初始的值,以后可以进行更新。
增量(increment):一种更新操作,增加变量的值(常常是加1)。
减量(decrement):一种更新操作,减少变量的值。
迭代(iteration):使用递归函数调用或者循环来重复执行一组语句。
无限循环(infinite loop):一个终止条件永远无法满足的循环。
算法(algorithm):解决一类问题的通用过程。
chapter8
对象(object):变量可以引用的一种事物。
序列(sequence):一个有序的值的集合,其中每个使用一个下标来定位。
项(item):序列中的一个值,
下标(index):用于在序列中选择元素的整数值。例如,可以用于在字符串中选取字符。在Python中下标从0开始。
切片(slice):字符串的一部分,通过一个下标范围来定位。
空字符串(empty string):没有字符,长度为0的字符串,使用一对引号来表示。
不可变(immutable):序列的一种属性,表示它的元素是不可改变的。
遍历(traverse):迭代访问序列中的每一个元素,并对每个元素进行相似的操作。
搜索(search):一种遍历的模式,当找到它想要的元素时停止。
计数器(counter):一种用来计数的变量,通常初始化为0,后来会递增。
方法调用(invocation):调用一个方法的语句。
可选参数(optional argument):函数或方法中,并不必须有的参数。
chapter9
文件对象(file object):用来表示一个打开的文件的值。
将问题回归到已解决问题(reduction to a previously solved problem):通过把问题表述为已经解决的某个问题的特例解决问题的一种方式。
特殊情形(special case):一种不典型或者不明显(因此更可能没有正确处理)的测试用例。