PB课程期末试题及答案分享_第1页
PB课程期末试题及答案分享_第2页
PB课程期末试题及答案分享_第3页
PB课程期末试题及答案分享_第4页
PB课程期末试题及答案分享_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PB课程期末试题及答案分享考试时间:______分钟总分:______分姓名:______一、单项选择题(共20题,每题2分,共40分)1.下列选项中,符合Python变量命名规则的是A.2varB._nameC.classD.my-var2.执行语句`x=10;y=3.14;print(type(x),type(y))`的输出结果是A.<class'int'><class'float'>B.<class'float'><class'int'>C.<class'int'><class'str'>D.<class'str'><class'float'>3.已知`s="Python"`,则`s[-1]`的值是A.PB.yC.tD.h4.下列关于列表的描述,正确的是A.列表中的元素必须是相同类型B.列表是一个有序的集合C.列表可以通过索引修改元素D.列表中的元素一旦创建就不能改变5.执行代码`a=[1,2,3];a.append(4);print(a)`的结果是A.[1,2,3,4]B.[4,1,2,3]C.[1,2,3]D.报错6.下列关于字典的描述,错误的是A.字典中的键必须是唯一的B.字典中的值可以是任意类型C.字典中的键必须是可变类型D.字典是无序的集合7.已知`d={'a':1,'b':2}`,执行`d['c']=3`后,`d`的值是A.{'a':1,'b':2}B.{'c':3}C.{'a':1,'b':2,'c':3}D.报错8.下列表达式的值为False的是A.3>5B.1==1C.'abc'<'abd'D.None==None9.执行`foriinrange(2,5):`循环,变量`i`的取值是A.1,2,3,4B.2,3,4,5C.2,3,4D.0,1,210.下列关于函数的描述,正确的是A.函数必须定义参数,否则无法调用B.函数定义后必须立即执行C.函数可以没有返回值D.一个文件中只能定义一个函数11.执行`print(abs(-10))`的输出结果是A.-10B.10C.10.0D.报错12.打开一个已存在的文本文件用于读取数据,应使用哪种模式A.'w'B.'r'C.'a'D.'r+'13.下列导入模块的方式中,错误的是A.importmathB.frommathimportsqrtC.importmathasmD.importmath.*14.已知`list1=[1,2,3]`,执行`list1*=2`后,`list1`的值是A.[1,2,3]B.[1,2,3,1,2,3]C.[1,2,3,2,3]D.[1,2,3,1,2,3,1,2,3]15.下列关于`break`和`continue`语句的描述,正确的是A.`break`跳出当前循环,`continue`继续下一次循环B.`break`继续下一次循环,`continue`跳出当前循环C.它们都可以用于`if`语句中D.它们只能用于`while`循环16.已知`x=10`,执行`x+=5`后,`x`的值是A.5B.15C.10D.2017.下列列表推导式,能生成[0,1,2,3,4]的是A.`[xforxinrange(5)]`B.`[xforxinrange(5)ifx>0]`C.`[xforxinrange(4)]`D.`[xforxinrange(5)ifx<5]`18.执行`int("3.14")`的结果是A.3.14B.3C.报错D."3"19.下列哪个关键字用于定义函数A.defB.functionC.defineD.func20.关于Python中的`None`,下列说法正确的是A.None等同于0B.None等同于FalseC.None等同于空字符串""D.None是一个空对象,表示无值二、多项选择题(共5题,每题3分,共15分。多选、少选、错选均不得分)1.下列变量名中,合法的有A.user_nameB.2nameC._tempD.class2.以下属于Python可变数据类型的有A.listB.tupleC.dictD.set3.下列字符串操作方法中,返回布尔值的有哪些A.str.endswith('a')B.str.startswith('P')C.str.isalpha()D.str.lower()4.关于循环结构,下列说法正确的有A.`while`循环通常用于循环次数未知的情况B.`for`循环通常用于遍历序列或集合C.`while`循环的循环条件永远为真时会进入死循环D.`for`循环无法跳出5.下列关于异常处理的描述,正确的有A.`try`块中包含可能发生异常的代码B.`except`块用于捕获并处理异常C.`finally`块无论是否发生异常都会执行D.一个`try`块只能对应一个`except`块三、填空题(共10题,每题3分,共30分)1.在Python中,使用`__________`函数可以接收用户从键盘输入的内容。2.已知`lst=[1,2,3,4]`,执行`lst.pop(1)`后,`lst`的值为__________。3.字典`d={'a':10,'b':20}`,使用`d.get('c',0)`返回的值是__________。4.执行`print("Hello"[1:3])`的输出结果是__________。5.`range(10)`生成的序列包含__________个整数。6.定义一个全局变量`count=0`,在函数内部要修改它,需要使用`__________`关键字。7.已知`a=3;b=5`,使用`__________`语法可以将`a`和`b`的值互换。8.文件操作中,`withopen('test.txt','w')asf:`中的`w`模式表示__________。9.列表`lst=[3,1,4,1,5]`,调用`lst.sort()`方法后,`lst`的值为__________。10.导入`math`模块,使用`__________`语句可以只导入`sqrt`函数。四、程序阅读题(共2题,每题5分,共10分)1.阅读下列代码,写出输出结果。```pythoncount=0foriinrange(10):ifi%2==0:count+=1print(count)```2.阅读下列代码,写出输出结果。```pythondeffunc(x):ifx>0:returnx*func(x-1)else:return1print(func(3))```五、编程题(共3题,共30分)1.(10分)编写一个函数`is_prime(n)`,判断一个整数`n`是否为素数(质数)。如果是素数返回`True`,否则返回`False`。素数是指只能被1和自身整除的大于1的自然数。2.(10分)编写一个程序,从键盘输入一个字符串,统计字符串中数字字符(0-9)的个数,并输出统计结果。3.(10分)编写一个程序,模拟一个简单的ATM取款机。-程序开始时,初始化一个账户余额`balance=1000`。-循环显示菜单:1.查询余额2.存款3.取款4.退出-用户输入选项后,根据选项执行相应操作:-查询:显示当前余额。-存款:输入存款金额,增加余额,提示成功。-取款:输入取款金额,如果余额充足则扣除,提示成功;否则提示余额不足。-退出:结束循环,程序结束。一、单项选择题1.答案:B解析:Python变量名不能以数字开头(排除A),不能包含特殊符号(排除D),不能使用Python保留关键字(排除C)。下划线开头通常用于特殊变量或私有变量,是合法的。2.答案:A解析:`10`是整数类型,`3.14`是浮点数类型。Python中的`type()`函数返回变量的类型。3.答案:B解析:字符串索引`s[-1]`表示获取字符串的最后一个字符。'Python'的最后一个字符是'n'。4.答案:C解析:列表中的元素可以是不同类型(排除A),列表是有序的(排除B),列表中的元素可以通过索引修改(排除D),列表是可变对象。5.答案:A解析:`append()`方法用于在列表末尾添加一个元素。原列表`[1,2,3]`添加`4`后变为`[1,2,3,4]`。6.答案:C解析:字典的键必须是不可变的(可哈希的)类型。列表是可变类型,不能作为字典的键。7.答案:C解析:`get()`方法用于获取字典的值,如果键不存在,则返回默认值(第二个参数)。'c'不在字典中,所以返回默认值3。8.答案:A解析:`3>5`结果为False。`1==1`为True。`'abc'<'abd'`比较的是ASCII码或字典序,'abc'排在前面,为True。`None==None`比较的是对象身份,为True。9.答案:C解析:`range(2,5)`生成从2开始,到5结束(不包含5)的整数序列,即2,3,4。10.答案:C解析:函数可以没有参数(排除A),函数定义后必须被调用才会执行(排除B),一个文件中可以定义多个函数(排除D),函数可以没有返回值(即返回None)。11.答案:B解析:`abs()`函数返回数值的绝对值。-10的绝对值是10。12.答案:B解析:'r'模式表示只读,用于读取已存在的文件。'w'是写入(覆盖),'a'是追加。13.答案:D解析:`importmath.*`是错误的语法。如果要导入math模块下的所有内容,应该使用`frommathimport*`。14.答案:B解析:列表乘法`*`表示列表元素的重复。`[1,2,3]*2`等价于`[1,2,3,1,2,3]`。15.答案:A解析:`break`语句用于立即终止当前的循环。`continue`语句用于跳过本次循环的剩余代码,直接进入下一次循环。两者都用于循环结构中(排除C,D)。16.答案:B解析:`+=`是增量赋值运算符,`x+=5`等价于`x=x+5`,即10+5=15。17.答案:A解析:`range(5)`生成0到4的整数。列表推导式`[xforxinrange(5)]`会生成包含这些整数的列表`[0,1,2,3,4]`。18.答案:B解析:`int()`函数将字符串转换为整数,会直接截断小数部分。`"3.14"`转换为整数是`3`。19.答案:A解析:Python中使用`def`关键字来定义函数。20.答案:D解析:`None`是Python中的一个特殊值,表示空或无。它不等于0(数值0),不等于False(布尔值),也不等于空字符串("")。它是一个单例对象。二、多项选择题1.答案:A、C、D解析:变量名必须以字母或下划线开头(排除B)。不能包含空格、连字符或其他特殊符号(排除D中的连字符,但A、C、D中的下划线和字母是合法的)。2.答案:A、C、D解析:列表(list)、字典(dict)、集合(set)都是可变数据类型。元组(tuple)是不可变数据类型。3.答案:A、B、C解析:`endswith`、`startswith`、`isalpha`都会返回布尔值。`lower()`方法将字符串转换为小写并返回新字符串,不返回布尔值。4.答案:A、B、C解析:`while`循环通常用于次数不确定的情况(A)。`for`循环通常用于遍历序列(B)。`while`循环条件永远为真会进入死循环(C)。`for`循环也可以使用`break`或`continue`跳出或继续(排除D)。5.答案:A、B、C解析:`try`块包含可能出错的代码(A)。`except`块用于捕获异常(B)。`finally`块无论是否发生异常都会执行(C)。一个`try`块可以对应多个`except`块来处理不同类型的异常(排除D)。三、填空题1.答案:input解析:Python中用于获取用户输入的函数是`input()`。2.答案:[1,3,4]解析:`pop(index)`方法移除并返回指定索引的元素。移除索引1的元素(值为2)后,列表变为`[1,3,4]`。3.答案:0解析:字典中不存在键'c',`get()`方法会返回默认值0。4.答案:el解析:字符串切片`s[1:3]`表示从索引1开始(包含),到索引3结束(不包含),即索引1和2的字符。'Hello'的第2、3个字符是'e','l'。5.答案:10解析:`range(10)`生成从0到9的整数序列,共有10个数。6.答案:global解析:在函数内部修改全局变量,必须使用`global`关键字声明该变量为全局变量。7.答案:a,b=b,a解析:Python支持元组解包,通过`a,b=b,a`可以在不使用临时变量的情况下交换两个变量的值。8.答案:写入(或覆盖)解析:'w'模式表示写入模式。如果文件已存在,内容会被清空;如果不存在,则创建新文件。9.答案:[1,1,3,4,5]解析:`sort()`方法是对列表进行原地升序排序。原列表中有两个1,排序后它们会靠在一起。10.答案:frommathimportsqrt解析:`frommathimportsqrt`语句表示只从math模块中导入sqrt函数,后续可以直接使用`sqrt`而不需要加`math.`前缀。四、程序阅读题1.答案:5解析:循环变量`i`从0遍历到9。`ifi%2==0`判断`i`是否为偶数。偶数有0,2,4,6,8,共5个。每次遇到偶数,`count`加1,最终输出5。2.答案:6解析:这是一个递归函数。-`func(3)`调用`3*func(2)`-`func(2)`调用`2*func(1)`-`func(1)`返回`1`-代入计算:`3*(2*1)`=6。五、编程题1.答案:```pythondefis_prime(n):ifn<=1:returnFalseforiinrange(2,int(n0.5)+1):ifn%i==0:returnFalsereturnTrue```2.答案:```pythons=input("请输入一个字符串:")count

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论