Python练习之函数和代码复用(二)
26
下面代码的输出结果是
def func(a,b): return a>>b s = func(5,2) print(s)
A 1
B 12
C 20
D 6
27 下面代码的输出结果是
def func(a,b): a *= b return a s = func(5,2) print(s)
A 12
B 10
C 1
D 20
28 下面代码的输出结果是
def f2(a): if a > 33: return True li = [11, 22, 33, 44, 55] res = filter(f2, li) print(list(res))
A [33,44,55]
B [44,55]
C [22,33,44]
D [11,33,55]
29下面代码的输出结果是
def fib(n): a,b = 1,1 for i in range(n-1): a,b = b,a+b return a print (fib(7))
A 8
B 13
C 5
D 21
30下面代码的输出结果是
def hello_world(): print('ST',end="*") def three_hellos(): for i in range(3): hello_world() three_hellos()
A ST*
B ***
C ST*ST*ST*
D ST*ST*
31下面代码的输出结果是
def exchange(a,b): a,b = b,a return (a,b) x = 10 y = 20 x,y = exchange(x,y) print(x,y)
A 20,10
B 20 10
C 20 20
D 10 10
32下面代码的输出结果是
MA = lambda x,y : (x > y) * x + (x < y) * y MI = lambda x,y : (x > y) * y + (x < y) * x a = 10 b = 20 print(MA(a,b)) print(MI(a,b))
A 20 10
B 10 10
C 20 20
D 10 20
33关于下面的代码,以下选项中描述正确的是
>>> list(range(0,10,2))
A 执行结果为0, 2, 4, 6, 8
B 按位置参数调用
C 按可变参数调用
D 按关键字参数调用
34关于下面代码,以下选项中描述正确的是
def fact(n, m=1) : s = 1 for i in range(1, n+1): s *= i return s//m print(fact(m=5,n=10))
A 执行结果为10886400
B 按位置参数调用
C 参数按照名称传递
D 按可变参数调用
35关于函数的返回值,以下选项中描述错误的是 A 函数可以返回0个或多个结果
B return可以传递0个返回值,也可以传递任意多个返回值
C 函数可以有return,也可以没有
D 函数必须有返回值
36 关于函数局部变量和全局变量的使用规则,以下选项中描述错误的是 A 可以通过global保留字在函数内部声明全局变量
B 对于基本数据类型的变量,无论是否重名,局部变量与全局变量不同
C 对于组合数据类型的变量,如果局部变量未真实创建,则是全局变量
D return不可以传递任意多个函数局部变量返回值
37关于函数,以下选项中描述错误的是 A 函数主要通过接口(interface)与外界通信,传递信息
B 函数:具有特定功能的可重用代码片段,实现解决某个特定问题的算法
C 函数使用时需要了解函数内部实现细节
D 函数在需要时被调用,其代码被执行
38关于函数的目的与意义,以下选项中描述错误的是 A 函数能调用未实现的函数
B 程序功能抽象,以支持代码重用
C 使用时无须了解函数内部实现细节
D 有助于采用分而治之的策略编写大型复杂程序
39关于函数,以下选项中描述错误的是 A 函数定义语句可执行
B 函数名称不可赋给其他变量
C 函数也是数据
D 一条函数定义定义一个用户自定义函数对象
40关于函数的参数传递(parameter passing),以下选项中描述错误的是
A Python参数传递时不构造新数据对象,而是让形式参数和实际参数共享同一对象
B 实际参数是函数调用时提供的参数
C 函数调用时,需要将形式参数传递给实际参数
D 形式参数是函数定义时提供的参数
41关于函数的关键字参数使用限制,以下选项中描述错误的是 A 不得重复提供实际参数
B 关键字参数必须位于位置参数之前
C 关键字参数顺序无限制
D 关键字参数必须位于位置参数之后
42下面代码的输出结果是
a = 4 a ^= 3 b = a ^ 2 print(a,end=",") print(b)
A 64, 4096
B 4,3
C 7,5
D 5,7
43执行下面代码,错误的是
def f(x, y = 0, z = 0): pass # 空语句,定义空函数体
A f(1)
B f(1, , 3)
C f(1, 2)
D f(1, 2, 3)
44 执行下面代码,错误的是
def f(x, y = 0, z = 0): pass # 空语句,定义空函数体
A f(1, y = 2, z = 3)
B f(1, x = 1, z = 3)
C f(z = 3, x = 1, y = 2)
D f(1, z = 3)
45执行下面的代码,以下选项中正确的是
def f(x, y = 0, z = 0): pass # 空语句,定义空函数体
A f(1, x = 1, z = 3)
B f(x = 1, 2)
C f(x = 1, y = 2, z = 3)
D f(1, y = 2, t = 3)
46关于嵌套函数,以下选项中描述错误的是
A
def f(): print("Outer function f") def g(): print("Inner function g") g() f()
B 嵌套函数是在函数内部定义函数
C 内层函数仅供外层函数调用,外层函数之外不得调用
D
def f(): print("Outer function f") def g(): print("Inner function g") g() f.g()
47下面代码的执行结果是
>>> def area(r, pi = 3.14159): return pi * r *r >>> area(pi = 3.14, r = 4)
A 50.24
B 出错
C 无输出
D 39.4384
48下面代码的执行结果是
>>> def area(r, pi = 3.14159): return pi * r * r >>> area(3.14, 4)
A 39.4384
B 50.24
C 出错
D 无输出
49 下面代码的执行结果是
def greeting(args1, *tupleArgs, **dictArgs): print(args1) print(tupleArgs) print(dictArgs) names = ['HTY', 'LFF', 'ZH'] info = {'schoolName' : 'NJRU', 'City' : 'Nanjing'} greeting('Hello,', *names, **info)
A
Hello, ('HTY', 'LFF', 'ZH') {'schoolName': 'NJRU', 'City': 'Nanjing'}
B 无输出
C ['HTY', 'LFF', 'ZH']
D 出错
50下面代码的执行结果是
def greeting(args1, *tupleArgs, **dictArgs): print(args1) print(tupleArgs) print(dictArgs) names = ['HTY', 'LFF', 'ZH'] info = {'schoolName' : 'NJRU', 'City' : 'Nanjing'} greeting(*names,'Hello,',**info)
A 出错
B 无输出
C
HTY ('LFF', 'ZH', 'Hello,') {'schoolName': 'NJRU', 'City': 'Nanjing'}
D
['HTY', 'LFF', 'ZH']