Python程序设计题库——第六章
关于递归函数的描述,以下选项中正确的是( )
A. 函数名称作为返回值
B. 包含⼀个循环结构
C. 函数⽐较复杂
D. 函数内部包含对本函数的再次调⽤cocos2d开发
答案:D
关于递归函数基例的说明,以下选项中错误的是( )
A. 递归函数必须有基例
B. 递归函数的基例不再进⾏递归
C. 每个递归函数都只能有⼀个基例
D. 递归函数的基例决定递归的深度
答案:C
以下选项中,不属于函数的作⽤的是( )
A. 提⾼代码执⾏速度
B. 增强代码可读性
C. 降低编程复杂度
D. 复⽤代码
答案:A
假设函数中不包括global保留字,对于改变参数值的⽅法,以下选项中错误的是( )
A. 参数是列表类型时,改变原参数的值
B. 参数是组合类型(可变对象)时,改变原参数的值
C. 参数的值是否改变与函数中对变量的操作有关,与参数类型⽆关
D. 参数是整数类型时,不改变原参数的值
答案:C
Python中,关于函数的描述,以下选项中正确的是( ).
A. 函数eval()可以⽤于数值表达式求值,例如eval("2*3+1")
B. Python函数定义中没有对参数指定类型,这说明,参数在函数中可以当作任意类型使⽤
C. ⼀个函数中只允许有⼀条return语句
D. Python中,def和return是函数必须使⽤的保留字
答案:A
在Python中,关于全局变量和局部变量,以下选项中描述不正确的是( )
A. ⼀个程序中的变量包含两类:全局变量和局部变量
B. 全局变量不能和局部变量重名
C. 全局变量在程序执⾏的全过程有效
D. 全局变量⼀般没有缩进
答案:B
关于⾯向对象和⾯向过程编程描述,以下选项中正确的是( )
A. ⾯向对象编程⽐⾯向过程编程更为⾼级
B. 所有⾯向对象编程能实现的功能采⽤⾯向过程同样能完成
C. ⾯向对象和⾯向过程是编程语⾔的分类依据
D. 模块化设计就是⾯向对象的设计
答案:B
以下选项中,对于递归程序的描述错误的是( )
A. 书写简单
B. 执⾏效率⾼
C. 递归程序都可以有⾮递归编写⽅法
D. ⼀定要有基例
答案:B
下⾯代码的输出结果是( )
A. 1001 2
>>>f=lambda x,y:y+x >>>f(10,10)
cmd打开mysql服务无法启动B. 10
C. 20
D. 10,10
答案:C
关于形参和实参的描述,以下选项中正确的是( )
A. 参数列表中给出要传⼊函数内部的参数,这类参数称为形式参数,简称形参
B. 程序在调⽤时,将形参复制给函数的实参
C. 函数定义中参数列表⾥⾯的参数是实际参数,简称实参
D. 程序在调⽤时,将实参复制给函数的形参
答案:D
以下选项中,对程序的描述错误的是( )
A. 程序是由⼀系列函数组成的
B. 通过封装可以实现代码复⽤
C. 可以利⽤函数对程序进⾏模块化设计
D. 程序是由⼀系列代码组成的
答案:A
以下选项中,对于函数的定义错误的是( )
A. def vfunc(a,b=2):
B. def vfunc(*a,b):
C. def vfunc(a,b):
D. def vfunc(a,*b):
答案:B
关于函数的参数,以下选项中描述错误的是( )
uncaught typeerrorA. 在定义函数时,如果有些参数存在默认值,可以在定义函数时直接为这些参数指定默认值
B. 在定义函数时,可以设计可变数量参数,通过在参数前增加星号(*)实现
C. 可选参数可以定义在⾮可选参数的前⾯
D. ⼀个元组可以传递给带有星号的可变参数
答案:C
关于return语句,以下选项中描述正确的是( )
A. 函数必须有⼀个return语句
B. 函数中最多只有⼀个return语句
C. return只能返回⼀个值
D. 函数可以没有return语句
答案:D
关于函数,以下选项中描述错误的是( )
A. 函数是⼀段具有特定功能的、可重⽤的语句组
B. Python使⽤del保留字定义⼀个函数
C. 函数能完成特定的功能,对函数的使⽤不需要了解函数内部实现原理,只要了解函数的输⼊输出⽅式即可。
D. 使⽤函数的主要⽬的是降低编程难度和代码重⽤
答案:B
关于Python的全局变量和局部变量,以下选项中描述错误的是( )
A. 使⽤global保留字声明简单数据类型变量后,该变量作为全局变量使⽤
B. 简单数据类型变量⽆论是否与全局变量重名,仅在函数内部创建和使⽤,函数退出后变量被释放
C. 全局变量指在函数之外定义的变量,⼀般没有缩进,在程序执⾏全过程有效
D. 局部变量指在函数内部使⽤的变量,当函数退出时,变量依然存在,下次函数调⽤可以继续使⽤
答案:D
关于Python的lambda函数,以下选项中描述错误的是( )
A. f = lambda x,y:x+y 执⾏后,f的类型为数字类型
B. lambda⽤于定义简单的、能够在⼀⾏内表⽰的函数
C. 可以使⽤lambda函数定义列表的排序原则
D. lambda函数将函数名作为函数结果返回
答案:A
关于下⾯的代码,以下选项中描述正确的是( ) >>> list(range(0,10,2))
A. 按可变参数调⽤
B. 按关键字参数调⽤
C. 执⾏结果为0, 2, 4, 6, 8
D. 按位置参数调⽤
答案: D
关于函数的返回值,以下选项中描述错误的是( )
A. 函数可以返回0个或多个结果
B. 函数必须有返回值
C. 函数可以有return,也可以没有
D. return可以传递0个返回值,也可以传递任意多个返回值
java做计算器代码答案:B
关于函数局部变量和全局变量的使⽤规则,以下选项中描述错误的是( )
A. 对于组合数据类型的变量,如果局部变量未真实创建,则是全局变量
B. 对于基本数据类型的变量,⽆论是否重名,局部变量与全局变量不同
C. 可以通过global保留字在函数内部声明全局变量
D. return不可以传递任意多个函数局部变量返回值
答案:D
关于函数,以下选项中描述错误的是( )
A. 函数使⽤时需要了解函数内部实现细节
B. 函数主要通过接⼝(interface)与外界通信,传递信息
C. 函数:具有特定功能的可重⽤代码⽚段,实现解决某个特定问题的算法
D. 函数在需要时被调⽤,其代码被执⾏
答案:A
关于函数的⽬的与意义,以下选项中描述错误的是( )
A. 程序功能抽象,以⽀持代码重⽤
B. 函数能调⽤未实现的函数
C. 有助于采⽤分⽽治之的策略编写⼤型复杂程序
D. 使⽤时⽆须了解函数内部实现细节
答案:B
关于函数,以下选项中描述错误的是( )
A. 函数也是数据
B. 函数定义语句可执⾏
C. ⼀条函数定义定义⼀个⽤户⾃定义函数对象
D. 函数名称不可赋给其他变量
答案:D
关于函数的参数传递(parameter passing),以下选项中描述错误的是( )
A. 实际参数是函数调⽤时提供的参数
B. 函数调⽤时,需要将形式参数传递给实际参数
C. Python参数传递时不构造新数据对象,⽽是让形式参数和实际参数共享同⼀对象
D. 形式参数是函数定义时提供的参数
答案:B
关于函数的关键字参数使⽤限制,以下选项中描述错误的是( )
A. 关键字参数顺序⽆限制
B. 关键字参数必须位于位置参数之前
C. 关键字参数必须位于位置参数之后
D. 不得重复提供实际参数
答案:B
使⽤( )关键字来创建python⾃定义函数。
A. function
B. func
C. procedure
D. def
答案:D
关于函数参数传递中,形参与实参的描述错误的是( )。
A. python实⾏安值传递参数。值传递指调⽤函数时将常量或变量的值(实参)传递给函数的参数(形参)
B. 实参与形参存储在各⾃的内存空间中,是两个不相关的独⽴变量
C. 在参数内部改变形参的值,实参的值⼀般是不会改变的。
D. 实参与形参的名字必须相同
答案:D
构造函数是类的⼀个特殊函数,在python中,构造函数的名称为( )
A. 与类同名
B. __construct
C. init
D. init
答案:C
在每个python类中,都包含⼀个特殊的变量( )。它表⽰当前类⾃⾝,可以使⽤它来引⽤类中的成员变量和成员函数。
A. this
B. me
C. self
D. 与类同名
答案:C
Python定义私有变量的⽅法为( )。
A. 使⽤__private 关键字
B. 使⽤public关键字
C. 使⽤__xxx__定义变量名
python基础知识单选题D. 使⽤__xxx定义变量名
答案:D
( )函数是指直接或间接调⽤函数本⾝的函数
A. 递归
B. 闭包
C. lambda
jave与c++区别D. 匿名
答案:A
关于函数的下列说法不正确的是( )
A. 函数可以没有参数
B. 函数可以有多个返回值
C. 函数可以没有return语句
D. 函数都有返回值
答案:B
在Python中,以下关于函数的描述错误的是( )项?
A. 在Python中,关键字参数是让调⽤者通过使⽤参数名区分参数,在使⽤时不允许改变参数列表中的参数顺序。
B. 在Python中,默认参数的值可以修改。
C. 在Python中,引⼊了函数式编程的思想,函数本⾝亦为对象。
D. 在Python中,函数的return语句可以以元组tuple的⽅式返回多个值。
答案:A
以下关于Python的说法中正确的是( )项?
A. Python中函数的返回值如果多于1个,则系统默认将它们处理成⼀个字典。
B. 递归调⽤语句不允许出现在循环结构中。
C. 在Python中,⼀个算法的递归实现往往可以⽤循环实现等价表⽰,但是⼤多数情况下递归表达的效率要更⾼⼀些。
D. 可以在函数参数名前⾯加上星号*,这样⽤户所有传来的参数都被收集起来然后使⽤,星号在这⾥的作⽤是收集其余的位置参数,这样就实现了变长参数。
答案: D
实现以下哪个⽅法可以让对象像函数⼀样被调⽤ ( )
A. str()
B. iter()
C. call()
D. next()
答案:C
以下关于函数参数传递的描述,错误的是:
A. 定义函数的时候,可选参数必须写在⾮可选参数的后⾯
B. 函数的实参位置可变,需要形参定义和实参调⽤时都要给出名称
C. 调⽤函数时,可变数量参数被当做元组类型传递到函数中
D. Python ⽀持可变数量的参数,实参⽤”*参数名”表⽰
答案:D
给出如下代码:
1
2
3
4
5
6
7
def func(a,b):
c=a**2+b
b=a
return c
a=10
b=100
c=func(a,b)+a
以下选项中描述错误的是( )
A. 执⾏该函数后,变量a的值为10
B. 执⾏该函数后,变量b的值为100
C. 执⾏该函数后,变量c的值为200
D. 该函数名称为func
答案:C
下⾯代码实现的功能描述为( )
1
2
3
4
5
6
7 def fact(n):
if n==0:
return 1
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是否是完数并输出结论
答案:A
给出如下代码:
1
2
3
4 def fact(n):
s = 1 for i in range(1,n+1):
s *= i
return s
以下选项中描述错误的是( )
A. fact(n)函数功能为求n的阶乘
B. range()函数是Python内置函数
C. s是局部变量
D. 代码中n是可选参数
答案:D
给出如下代码:
1
2
3
4
5 ls = ["car","truck"]
def funC(a):
ls.append(a)
return funC("bus")
print(ls)
以下选项中描述错误的是( )
A. funC(a)中的a为⾮可选参数
B. ls.append(a)代码中的ls是全局变量
C. ls.append(a)代码中的ls是列表类型
D. 执⾏代码输出结果为['car','truck']
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论