Python:函数和代码复⽤
1、关于递归函数的描述,以下选项中正确的是
A.包含⼀个循环结构
B.函数⽐较复杂
C.函数内部包含对本函数的再次调⽤
D.函数名称作为返回值
答案:D
答案解析:递归函数是指函数内部包含对本函数的再次调⽤。
2、关于递归函数基例的说明,以下选项中错误的是
A.递归函数必须有基例
B.递归函数的基例不再进⾏递归
C.每个递归函数都只能有⼀个基例
D.递归函数的基例决定递归的深度
答案:C
答案解析:每个递归函数⾄少存在⼀个基例
3、以下选项中,不属于函数的作⽤的是
A.提⾼代码执⾏速度
B.复⽤代码
C.增强代码可读性
D.降低编程复杂度
答案:C
答案解析:函数的作⽤是复⽤代码、增强代码可读性、降低编程复杂度,⽽并不能提⾼代码的执⾏速度。
4、假设函数中不包括global保留字,对于改变参数值的⽅法,以下选项中错误的是
A.参数是列表类型时,改变原参数的值
B.参数是整数类型时,不改变原参数的值
C.参数是组合类型(可变对象)时,改变原参数的值
D.参数的值是否改变与函数中对象的操作有关,与参数类型⽆关
答案:D
答案解析:python⾥有可变对象和不可变对象之分。只有传⼊的是不可变对象时,值才不发⽣改变,若是可变对象,值的传⼊需要注意。不可变对象:Number ,String ,Tuple,bool。可变对象: List , Set , Dictionary是可以改变内部的元素 。
5、在python中,关于函数的描述,以下选项中正确的是
A. ⼀个函数中只允许有⼀条return语句
B. Python中,def和return是函数必须使⽤的保留字
C. Python函数定义中没有对参数指定类型,这说明,参数在函数中可以当作任意类型使⽤
D. 函数eval()可以⽤于数值表达式求值,例如eval(‘2*3+1’)
答案:D
答案解析:函数可以不使⽤return语句或多条return语句,因此A,B不正确;Python函数定义中没有对参数指定类型,函数中应根据实参的类型使⽤,C不正确。
6、给出如下代码
c = a **2+ b
b =a
return c
a =10
b =100
c = func(a,b)+a
以下选项中描述错误的是
A. 执⾏该函数后,变量c的值为200
B. 该函数名称为func
C.执⾏该函数后,变量b的值为100
D.执⾏该函数后,变量a的值为10中文的编程语言
答案:A
答案解析:执⾏该函数后,变量c的值为210
7、在Python中,关于全局变量和局部变量,以下选项中描述不正确的是
A.⼀个程序中的变量包含两类:全局变量和局部变量
B.全局变量⼀般没有缩进
C.全局变量在程序执⾏的全过程有效
D.全局变量不能和局部变量重名
答案:D
答案解析:全局变量可以和局部变量重名,全局变量指的是在函数之外定义的变量,在程序执⾏全过程有效。全局变量在函数内部使⽤时,需要提前使⽤保留字global声明。局部变量指在函数内部定义的变量,仅在函数内部有效,当函数退出时,变量将不再存在。例如:
'''
遇到问题没⼈解答?⼩编创建了⼀个Python学习交流QQ:579817333
寻有志同道合的⼩伙伴,互帮互助,⾥还有不错的视频学习教程和PDF电⼦书!
'''
n =2
def multiply(x, y =10):
n =x*y    #局部变量n,和第⼀⾏代码n不同。
return n  #返回的n也是局部变量n
s =multiply(99,2)
print(s)
print(n)
全局变量可以和局部变量重名,因此D错误
8、关于⾯向对象和⾯向过程编程描述,以下选项中正确的是
A. ⾯向对象编程⽐⾯向过程编程更为⾼级
B. ⾯向对象和⾯向过程是编程语⾔的分类依据
C.模块化设计就是⾯向对象的设计
D.所有⾯向对象编程能实现的功能采⽤⾯向过程同样能完成
答案:D
答案解析:⾯向对象编程能实现的功能均可以采⽤⾯向过程同样能完成
9、以下选项中,对于递归程序的描述错误的是
python基础教程电子书15A. 书写简单
B. 执⾏效率⾼
C.⼀定要有基例
D.递归程序都可以有⾮递归编写⽅法
答案解析:递归程序的执⾏效率⽐较低
10、下⾯代码的输出结果是
f =lambda x,y:y+x
f(10,10)
A. 10textarea快捷键
B. 20
C.10,10
D.100
答案:B
答案解析:lambda表达式相当于:
def fun(x, y):
return x + y
print(fun(10,10))
11、关于形参和实参的描述,以下选项中正确的是
A.函数定义中参数列表⾥⾯的参数是实际参数,简称实参
B.参数列表中给出要传⼊函数内部的参数,这类参数称为形式参数,简称形参
C.程序在调⽤时,将实参复制给函数的形参
D.程序在调⽤时,将形参复制给函数的实参
答案:C
答案解析:函数定义中参数列表⾥⾯的参数是形参,参数列表中给出要传⼊函数内部的参数,这类参数称为实参;程序在调⽤时,将实参复制给函数的形参
12、关于lambda函数,以下选项中描述错误的是
A. lambda函数也称为匿名函数
stripe的优势B. lambda函数将函数名作为函数结果返回
C.定义了⼀种特殊的函数
D.lambda不是Python的保留字
答案:D
答案解析:lambda是Python的保留字
13、以下选项中,对于函数的定义错误的是
A. def vfunc(a, b = 2):
B. def vfunc(a, b):
C. def vfunc(a, *b):
D. def vfunc(*a, b):
答案:D
答案解析:def vfunc(* a, b):中的*(可选参数)应该放在后⾯,因此D错误
14、关于函数的参数,以下选项中描述错误的是
A. 在定义函数时,如果有些参数存在默认值,可以在定义函数时直接为这些参数指定默认值
B. 在定义函数时,可以设计可变数量参数,通过在参数前增加星号(*)实现
C. 可选参数可以定义在⾮可选参数的前⾯
D. ⼀个元组可以传递给带有星号的可变参数
答案:D
答案解析:可选参数不可以定义在⾮可选参数的前⾯
15、关于return语句,以下选项中描述正确的是
A.函数中最多只有⼀个return语句
B.函数必须有⼀个return语句
D.函数可以没有return语句
答案:D
答案解析:函数return的个数没有限制,可以没有return语句
16、关于函数,以下选项中描述错误的是
A.函数是⼀段具有特定功能的、可重⽤的语句组
B.函数能完成特定的功能,对函数的使⽤不需要了解函数内部实现原理,只要了解函数的输⼊输出⽅式即可
C.使⽤函数的主要⽬的是降低编程难度和代码重⽤
D.Python使⽤del保留字定义⼀个函数
答案:D
答案解析:Python使⽤def保留字定义⼀个函数
17、关于Python的全局变量和局部变量,以下选项中描述错误的是
A.全局变量指在函数之外定义的变量,⼀般没有缩进,在程序执⾏全过程有效
B.局部变量指在函数内部使⽤的变量,当函数退出时,变量依然存在,下次函数调⽤可以继续使⽤
C.使⽤global保留字声明简单数据类型变量后,该变量作为全局变量使⽤
D.简单数据类型变量⽆论是否与全局变量重名,仅在函数内部创建和使⽤,函数退出后变量被释放
答案:D
答案解析:局部变量指在函数内部定义的变量,仅在函数内部有效,当函数退出时,变量将不再存在。
18、关于Python中的lambda函数,以下选项中描述错误的是
A.lambda⽤于定义简单的、能够⼀⾏内表⽰的函数
B.可以使⽤lambda函数定义列表的排序原则
C.f = lambda x,y:x+y执⾏后,f的类型为数字类型
D.lambda函数将函数名作为函数结果返回
答案:D
答案解析:C选项中,f的类型依参数来确定
19、下⾯代码实现的功能描述为
'''
遇到问题没⼈解答?⼩编创建了⼀个Python学习交流QQ:579817333
寻有志同道合的⼩伙伴,互帮互助,⾥还有不错的视频学习教程和PDF电⼦书!
'''
def fact(n):
if n ==0:
return1
else:
return n * fact(n-1)
num =eval(input('请输⼊⼀个整数:'))
print(fact(abs(int(num))))
A. 接受⽤户输⼊的整数N,输出N的阶乘值
B. 接受⽤户输⼊的整数N,判断N是否是素数并输出结论
C. 接受⽤户输⼊的整数N,判断N是否是整数并输出结论
D. 接受⽤户输⼊的整数N,判断N是否是⽔仙花数
答案:D
答案解析:这是典型的递归函数,在return语句中调⽤函数本⾝。功能为输出N的阶乘值
20、给出如下代码
def fact(n):
s =1
for i in range(1,n+1):
s *= i
  return s
以下选项中描述错误的是
A.代码中n是可选参数
B.fact(n)函数功能为求n的阶乘
C.s是局部变量
D.range()函数是Python内置函数
答案:A
答案解析:代码中n不是可选参数,可选参数有*或**
21、给出如下代码
ls =['car','truck']
def funC(a):
mysql installer is running in
ls.append(a)
return
funC('bus')
print(ls)
以下选项中描述错误的是
A.ls.append(a)代码中的ls是全局变量
B.执⾏代码输出结果为[‘car’,’truck’]
C.ls.append(a)代码中的ls是列表类型变量
D.funC(a)中a为⾮可选参数
答案:B
答案解析:执⾏代码输出结果为[‘car’,’truck’,‘bus’]
22、给出如下代码
'''
遇到问题没⼈解答?⼩编创建了⼀个Python学习交流QQ:579817333
寻有志同道合的⼩伙伴,互帮互助,⾥还有不错的视频学习教程和PDF电⼦书!
'''
ls =['car','truck']
def funC(a):
ls =[]
ls.append(a)
return
funC('bus')
print(ls)
以下选项中描述错误的是
A.代码函数定义中,ls.append(a)中的ls是局部变量
B.执⾏代码输出的结果为[‘car’, ‘truck’]
C.ls.append(a)代码中的ls是列表类型
D.执⾏代码输出结果为[‘car’, ‘truck’, ’bus’]
答案:D
答案解析:funC函数内部的ls是局部变量,与全局变量不同,在函数调⽤结束后,局部变量就会消失。最终打印输出的ls是全局变量。
23、给出如下代码
>linux安装nvidia显卡驱动

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。