【Python程序设计】第八章 单元测验 答案与解析
azurekiln 发布于 阅读:5 Python程序设计
一. 判断题(共9题,100分)
ls = [1,7,5]
reversed(ls)
-
(判断题)执行上面的代码后,ls内的值是[5,7,1]。
A. 对
B. 错
答案:错
解析:reversed(ls) 返回一个反向迭代器 不 修改原列表;要得到反转后的列表,可写 ls.reverse()(就地修改)或 list(reversed(ls))(生成新列表)。
def foo(a,b):
a, b = 3,4
-
(判断题) 有函数如上,如果a = 1, b = 2,然后调用foo(a, b),在函数外a, b的值依然为1, 2。
A. 对
B. 错
答案:对
解析:函数参数 a, b 在函数内部是 局部变量,对它们的重绑定不影响外部同名变量。
-
(判断题) 引用库及调用库函数方式之一如下: 引用库 import 库名; 调用库函数 函数名(函数参数)。
A. 对
B. 错
答案:错
解析:使用 import 库名 后,需要通过 模块名.函数名() 来调用,如 math.sin(x);直接写 sin(x) 会报 NameError,除非另行使用 from 库名 import 函数名。
-
(判断题) 在函数中使用return语句可以返回值,所以函数中一定要有return语句。
A. 对
B. 错
答案:错
解析:Python 函数若无 return,默认返回 None。并非所有函数都需要返回值(例如仅用于执行动作的“过程”函数可以不写 return)。
-
(判断题) 调用函数时传递的实参个数必须与函数形参个数相等才行。
A. 对
B. 错
答案:错
解析:Python 支持默认参数、*可变参数(args, kwargs)等,实参个数不必严格等于形参个数。
-
(判断题) 使用函数的主要目的是实现代码复用和降低编程难度。
A. 对
B. 错
答案:对
解析:函数封装逻辑,提高可读性、复用性,并将复杂问题分解,确实能降低编程难度。
-
(判断题) 内置函数len()返回指定序列的元素个数,适用于列表、元组、字符串、字典、集合以及range等迭代对象。
A. 对
B. 错
答案:对
解析:len() 可用于所有实现了 len() 方法的对象,上述类型均可。
-
(判断题) 在函数内部,既可以使用global来声明使用外部全局变量,也可以使用global直接定义全局变量。
A. 对
B. 错
答案:错
解析:global name 只能 声明 函数内对该名称的赋值作用于全局作用域,但不会“直接定义”变量——要定义全局变量,仍需在函数内配合赋值语句 name = value。
-
(判断题) 函数定义时,在参数前面加一个星号表示可变数量变量。
A. 对
B. 错
答案:对
解析:def foo(*args) 表示将所有多余的位置参数收集到元组 args 中;类似地,**kwargs 收集多余的关键字参数到字典。