2023《Python程序设计》试题库:第5章函数定义与使用(含答案)
- 技巧分类:编程网络
- 技巧标签:Python  程序  设计  试题 
- 技巧链接:https://wpfx.org.cn/skills/5255.html
- 技巧详情:
2023《Python程序设计》试题库:第5章函数定义与使用(含答案)
一、填空题
380、Python中定义函数的关键字是_________________。(def)
381、在函数内部可以通过关键字________________来定义全局变量。(global)
382、假如函数中没有return语句或者return语句不带任何返回值,那么该函数的返回值为_________________。(None)
383、表达式 sum(range(10)) 的值为________________。(45)
384、表达式 sum(range(1, 10, 2)) 的值为____________。(25)
385、表达式 list(filter(None, [0,1,2,3,0,0])) 的值为___________________。([1, 2, 3])
386、表达式 list(filter(lambda x:x>2, [0,1,2,3,0,0])) 的值为_________。([3])
387、表达式 list(range(50, 60, 3)) 的值为_______________________。([50, 53, 56, 59])
388、表达式 list(filter(lambda x: x%2==0, range(10))) 的值为__________________________。([0, 2, 4, 6, 8])
389、表达式 list(filter(lambda x: len(x)>3, ['a', 'b', 'abcd'])) 的值为___________。(['abcd'])
390、已知 g = lambda x, y=3, z=5: x*y*z,则语句 print(g(1)) 的输出结果为_______。(15)
391、表达式 list(map(lambda x: len(x), ['a', 'bb', 'ccc'])) 的值为__________。([1, 2, 3])
392、已知 f = lambda x: x+5,那么表达式 f(3) 的值为________。(8)
393、表达式 sorted(['abc', 'acd', 'ade'], key=lambda x:(x[0],x[2])) 的值为_____________。(['abc', 'acd', 'ade'])
394、已知函数定义def demo(x, y, op):return eval(str(x)+op+str(y)),那么表达式demo(3, 5, '+')的值为______________________。(8)
395、已知函数定义def demo(x, y, op):return eval(str(x)+op+str(y)),那么表达式demo(3, 5, '*')的值为______________________。(15)
396、已知函数定义def demo(x, y, op):return eval(str(x)+op+str(y)),那么表达式demo(3, 5, '-')的值为______________________。(-2)
397、已知f = lambda n: len(bin(n)[bin(n).rfind('1')+1:]),那么表达式f(6)的值为____________________。(1)
398、已知f = lambda n: len(bin(n)[bin(n).rfind('1')+1:]),那么表达式f(7)的值为____________________。(0)
399、已知 g = lambda x, y=3, z=5: x+y+z,那么表达式 g(2) 的值为________。(10)
400、已知函数定义 def func(*p):return sum(p),那么表达式 func(1,2,3) 的值为______。(6)
401、已知函数定义 def func(*p):return sum(p),那么表达式 func(1,2,3, 4) 的值为______。(10)
402、已知函数定义 def func(**p):return sum(p.values()),那么表达式 func(x=1, y=2, z=3) 的值为________。(6)
403、已知函数定义 def func(**p):return ''.join(sorted(p)),那么表达式 func(x=1, y=2, z=3)的值为__________。('xyz')
404、已知 f = lambda x: 5,那么表达式 f(3)的值为_____________。(5)
二、判断题
168、调用函数时,在实参前面加一个型号*表达序列解包。(对)
169、在Python 3.x中语句 print(*[1,2,3]) 不能对的执行。(错)
170、函数是代码复用的一种方式。(对)
171、定义函数时,即使该函数不需要接受任何参数,也必须保存一对空的圆括号来表达这是一个函数。(对)
172、编写函数时,一般建议先对参数进行合法性检查,然后再编写正常的功能代码。(对)
173、一个函数假如带有默认值参数,那么必须所有参数都设立默认值。(错)
174、定义Python函数时必须指定函数返回值类型。(错)
175、定义Python函数时,假如函数中没有return语句,则默认返回空值None。(对)
176、假如在函数中有语句 return 3,那么该函数一定会返回整数3。(错)
177、函数中必须包含return语句。(错)
178、函数中的return语句一定可以得到执行。(错)
179、不同作用域中的同名变量之间互相不影响,也就是说,在不同的作用域内可以定义同名的变量。(对)
180、全局变量会增长不同函数之间的隐式耦合度,从而减少代码可读性,因此应尽量避免过多使用全局变量。(对)
181、函数内部定义的局部变量当函数调用结束后被自动删除。(对)
182、在函数内部,既可以使用global来声明使用外部全局变量,也可以使用global直接定义全局变量。(对)
183、在函数内部没有办法定义全局变量。(错)
184、在函数内部直接修改形参的值并不影响外部实参的值。(对)
185、在函数内部没有任何方法可以影响实参的值。(错)
186、调用带有默认值参数的函数时,不能为默认值参数传递任何值,必须使用函数定义时设立的默认值。(错)
187、在同一个作用域内,局部变量会隐藏同名的全局变量。(对)
188、形参可以看做是函数内部的局部变量,函数运营结束之后形参就不可访问了。(对)
189、假设已导入random标准库,那么表达式 max([random.randint(1, 10) for i in range(10)]) 的值一定是10。(错)
190、Python标准库random的方法randint(m,n)用来生成一个[m,n]区间上的随机整数。(对)
191、在函数内部没有任何声明的情况下直接为某个变量赋值,这个变量一定是函数内部的局部变量。(对)
192、在Python中定义函数时不需要声明函数参数的类型。(对)
193、在Python中定义函数时不需要声明函数的返回值类型。(对)
194、在函数中没有任何办法可以通过形参来影响实参的值。(错)
195、已知 x = 3,那么执行语句 x+=6 之后,x的内存地址不变。(错)
196、在定义函数时,某个参数名字前面带有一个*符号表达可变长度参数,可以接受任意多个普通实参并存放于一个元组之中。(对)
197、在定义函数时,某个参数名字前面带有两个*符号表达可变长度参数,可以接受任意多个关键参数并将其存放于一个字典之中。(对)
198、定义函数时,带有默认值的参数必须出现在参数列表的最右端,任何一个带有默认值的参数右边不允许出现没有默认值的参数。(对)
199、在调用函数时,可以通过关键参数的形式进行传值,从而避免必须记住函数形参顺序的麻烦。(对)
200、在调用函数时,必须牢记函数形参顺序才干对的传值。(错)
201、调用函数时传递的实参个数必须与函数形参个数相等才行。(错)
202、在编写函数时,建议一方面对形参进行类型检查和数值范围检查之后再编写功能代码,或者使用异常解决结构,尽量避免代码抛出异常而导致程序崩溃。(对)
203、lambda表达式中可以使用任意复杂的表达式,但是必须只编写一个表达式。(对)
204、g = lambda x: 3不是一个合法的赋值表达式。(错)
205、包含yield语句的函数一般成为生成器函数,可以用来创建生成器对象。(对)
206、在函数中yield语句的作用和return完全同样。(错)
207、语句pass仅起到占位符的作用,并不会做任何操作。(对)
208、无法使用lambda表达式定义有名字的函数。(错)
发表评论(审核通过后显示) 取消回复