版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2024年3月青少年软件编程Python等级考试三级真题(含答案和解析-在末尾)一、单选题(共25题,共50分)。1.在Python中,hex(2023)的功能是?()。A.将十进制数2023转化为十六进制数B.将十进制数2023转化为八进制数C.将十六进制数2023转化为十进制数D.将八进制数2023转化为十进制数2.下列表达式的值与其他三个选项不相等的是哪一个?()。A.(A)16B.(11)8C.(10)10D.(1010)23.下列说法错误或值为False的是?()。A.将十进制数转化为八进制数的方法是除以8取余,逆序输出。B.(8)16>(8)10C.(45)10=4×101+5×100D.八进制数15对应的十进制数为134.下面选项中最大的数是?()。A.(37)8B.(11111)2C.(1F)16D.(32)105.关于下列代码,说法正确的是?()。try:a=int(input('输入一个数:'))b=int(input('输入另一个数:'))m=a/bprint('结果是',m)except:print('其他错误!')exceptValueError:print('输入的不是数字!')A.输入的都是数字,且b为非0整数时,执行try后面的语句。B.输入的有非数字时,执行exceptValueError后面的语句。C.输入的b为0时,执行except后面的语句。D.第6行代码只能出现在try-except代码块的最后,所以代码书写有误,不能运行。6.下列代码的运行结果是?()。foriinrange(2):try:a=5%iexcept:print('&&&&&')else:print('@@@@@')finally:print('*****')A.B.C.D.7.下面程序使用的with语句打开文件,处理结束后会?()。c=['老虎','狗','狮子','大象','狼']withopen('动物.csv','w')asf:f.write(','.join(c)+'\n')A.自动读取动物.csv文件B.自动写入动物.csv文件C.自动打开动物.csv文件D.自动关闭动物.csv文件8.与下列程序实现的功能一样的是?()。withopen('动物.csv','r')asf:h=f.read().strip().split(',')print(h)A.B.C.D.9.关于语句f=withopen('d:/stu.csv','r'),下列描述不正确的是?()。A.如果文件stu.csv不存在,会创建stu.csv。B.以只读方式打开文件C.f是变量名D.程序处理完毕,会自动关闭stu.csv。10.有关Python文件常用读写方式的描述,错误的是?()。A.read()每次读取整个文件B.read()生成的文件内容是一个列表C.readline()每次只读取文件的一行D.readlines()每次按行读取整个文件内容,将读取到的内容放到一个列表中。11.关于语句f=open(r"c:\计算.txt",'w'),下列描述不正确的是?()。A.f是变量B.'w'以写方式打开文件C.如果文件“计算.txt”不存在,不会报错。D.如果文件“计算.txt”内原来有内容,将不会被覆盖。12.小明用插入排序算法,编写了如下代码,对列表arr中的数值进行排序,请问,代码中红色①处,应填写什么代码?()。arr=[9,3,7,5,1,6,8,4,2]foriinrange(1,len(arr)):key=arr[i]j=i-1whilej>=0andkey<arr[j]:arr[j+1]=①j=j-1arr[j+1]=keyprint("排序后的数组:",arr)A.arr[i]B.arr[j-1]C.arr[i+1]D.arr[j]13.列表a中全是整数,小明想将其中所有奇数都增加1,偶数不变,于是编写了如下代码。请问红色①处,代码应该是?()。a=[1,2,3,4,5,6,7,8,9,10]forxinrange(len(a)):if①!=0:a[x]=a[x]+1print(a)A.a[x]/2B.a[x]^2C.a[x]*2D.a[x]%214.小明用冒泡排序算法编写了一段程序,请问程序中红色标记的①处,应该填写什么代码?()。a=[8,4,2,11,3,9]n=len(a)foriinrange(0,n):forjinrange(0,n-i-1):ifa[j]>a[①]:a[j],a[j+1]=a[j+1],a[j]print(a)A.j-1B.j+1C.n-1D.n+115.题divmod(-10,3)返回值是?()。A.(-3,1)B.(-4,2)C.(-4,-2)D.(-3,-1)16.下列代码的结果是?()。set_a=set('happy')set_b=set('java')set_c=set_a-set_bc=list(set_c)print(c)A.{'h','p','y'}B.['a']C.['v','y','h','p','j','a']D.['y','h','p']17.给定列表nums=[1,2,3,4,5,6],以下哪个选项返回True?()。A.notall(nums)B.any(nums)C.not(all(nums)andany(nums))D.not(all(nums)orany(nums))18.在Python中print(tuple(range(0,8,3)))语句,执行的结果是?()。A.(0,3,6)B.(0,2,4,6)C.(0,1,2,3,4,5,6,7)D.(0,4)19.下列关于map()函数的代码,其运行结果是?()。res=map(str,[3,6,8,4,5])print(list(res))A.'36845'B.[3,6,8,4,5]C.[6,12,16,8,10]D.['3','6','8','4','5']20.下列程序运行结果是?()。a=int(min("2345"))b=int(max("14693"))c=b+aprint(c)A.11B.243C.729D.656121.以下哪个函数可以将字符转换为ASCII码?()。A.ascii()B.ord()C.chr()D.encode()22.以下哪个值在bool函数中会被解释为False?()。A.0B.1C.-1D.223.以下哪个选项描述了abs()函数的返回值类型?()。A.intB.floatC.boolD.不确定,取决于输入参数类型。24.给定一个整数列表nums,如何使用sum函数计算列表中所有元素的和,并返回结果?()。A.sum(nums)B.sum[nums]C.sum(nums,[])D.sum(nums,0)25.以下哪个选项描述了程序的输出结果?()。fruits=['apple','banana','orange']fori,fruitinenumerate(fruits):print(i,fruit)A.B.C.D.二、判断题(共10题,共20分)。26.十六进制3C转换成八进制为74。()。27.异常处理结构中,如果try程序段中出现了运行错误的语句,那么每一个except程序段都会被运行。()。28.下面程序,将产生一个“动物.csv”的文件。()。c=['老虎','狗','狮子','大象']f=open('动物.csv','w')f.write(','.join(c)+'\n')f.close()29.使用open()函数打开'food.csv'文件后,返回的是元组。()。30.下面的程序,能在原来文件的基础上添加三行字符串。()。f=open(r"c:\字符串.txt",'w')。f.write('Eden\nOrion\nPhoenix\n')f.close()31.题abs()函数的功能是获取参数的绝对值,例如abs(-3.14)的运行结果是-3。()。32.题print(type({"name":"Alice","age":25})==dict)结果为True。()。33.题format()函数可以指定变量的类型、精度、对齐方式等格式选项,从而生成不同的字符串,如"{:.2f}".format(3.1415926)的结果为"3.14"。()。34.使用open()函数打开一个已存在的文件时,如果指定的模式为"w",则会清空该文件中的内容。()。35.二进制数在末尾加个“0”,等于这个数乘以2。()。三、编程题(共3题,共30分)。36.整数问题。给定一个十进制整数n,求出从1到n的所有整数中出现“1”的个数。例如,n=2时,1,2出现1个“1”。n=12时,1,2,3,4,5,6,7,8,9,10,11,12,出现5个“1”。现编写一个程序,实现如下功能:输入整数n,执行程序后,输出该范围内出现“1”的个数。请完善程序。n=int(input('请输入整数:'))①i=1while②:x=iwhilex>0:if③:count=count+1x//=10④print(n,'范围内1的个数有:',count)37.偶数排序。下列程序将数列中的偶数按从小到大顺序输出,请你补全代码。defeven(x):returnx%2==0#自定义函数even,判断x是否为偶数。c=[3,7,1,18,9,12,5,2,22,10]n=①h=[]foriin②:forjinrange(0,n-i-1):if③:c[j],c[j+1]=④foriinrange(0,n-1):h=filter(⑤,c)ans=list(h)print(ans)38.食堂问卷调查。学校食堂为了提高服务质量,让老师和同学们更好地投入工作和学习,对同学们开展了问卷调查,调查项目共5项(即5个问题),每个项目有A、B、C三个选项,同学们每题可选一项,学校后勤管理的李老师对调查结果进行了收集整理,并存放在"myd.csv"文件中(部分数据如图所示),现在需要分析同学们对这5个项目的答题情况,统计出每个项目选"A"的情况。李老师用Python编写了以下代码,输出结果如下图,请你完善划线处。importcsvwithopen("/data/①")asf:cont=list(csv.reader(f))qk={"第1题":0,"第2题":0,"第3题":0,"第4题":0,"第5题":0}forrowincont[②]:foriinrange(len(row)):ifrow[i]==③:qk["第"+str(i+1)+"题"]+=1foriinrange(5):print("第"+str(i+1)+"题选A的人数为:"+str(qk["第"+str(i+1)+"题"]))答案解析如下。1.标准答案:A。试题解析:理解python中数制转换函数,hex()函数是将十进制数转换为十六进制数字符串。2.标准答案:B。试题解析:把选项全部转换成十进制,所以本题目选择B。(A)16=(10)10,(11)8=(9)10,(10)10=(10)10,(1010)2=(10)10。3.标准答案:B。试题解析:进制转换,(8)16=(8)10。4.标准答案:D。试题解析:(37)8=(31)10,(11111)2=(31)10,(1F)16=(31)10。5.标准答案:D。试题解析:except块只能出现在try-except程序结构的最后,所以代码书写有语法错误。6.标准答案:B。试题解析:try程序块运行了两次。第1次i的值为0,第3行代码运行出错,所以会进入except程序块执行,打印出&&&&&。无论是否出错,finally程序块都会执行,所以打印出*****。第2次i的值为1,代码运行正确,进入else程序块执行,打印出@@@@@,最后进入finally程序块,打印出*****。综上所述,选项B正确。7.标准答案:D。试题解析:with语句打开文件,处理结束后会自动关闭文件。8.标准答案:B。试题解析:考核从CSV格式文件中读出数据。9.标准答案:A。试题解析:文件打开方式——r只读,如果文件stu.csv不存在,会报错。10.标准答案:B。试题解析:read()生成的文件内容是一个字符串。11.标准答案:D。试题解析:如果文件“计算.txt”内原来有内容,将会被覆盖。12.标准答案:D。试题解析:本题为经典的插入排序算法,题中需要补充的代码,就是数值位置互换的代码,所以正确答案是选项D,也就是arr[j]。13.标准答案:D。试题解析:本题代码中,for循环从a列表中取出值,交给if语句进行判断,如果除以2的余数不等于0,就是奇数,则当前值+1,若等于0则值不变。取余数的运算符是%,所以正确答案是D。14.标准答案:B。试题解析:本题考查学生对冒泡算法循环位置的理解,标准答案为选项B。15.标准答案:B。试题解析:divmod(a,b)函数可以返回a除以b的商和余数,余数的符号由第二个参数的符号决定,在这个例子中,-10除以3的商为-4,余数为2。因此,正确的答案是B.(-4,2)。16.标准答案:D。试题解析:首先,set_a包含字符'happy',set_b包含字符'java'。然后,通过set_a-set_b操作取得两个集合的差集,即set_c=set_a-set_b。这将从set_a中移除在set_b中出现的元素,因此set_c将包含字符'h','p','y'。最后,将set_c转换为列表c,并打印输出c。所以输出结果是['y','h','p']。17.标准答案:B。试题解析:notall(nums)返回True的条件是列表中至少有一个元素为False。any(nums)返回True的条件是列表中有元素为True。给定列表`nums=[1,2,3,4,5,6]`,所有元素都是非零的正整数,因此any(nums)返回True,所以此题选择B选项。18.标准答案:A。试题解析:range()函数可以生成一个整数序列,其中的参数分别表示起始值、终止值和步长。在这个例子中,range(0,8,3)生成的序列是0,3,6,然后使用tuple()函数将其转换为元组,最终输出结果为(0,3,6),所以此题选A。19.标准答案:D。试题解析:map()函数将第一个参数(这里是str)作用于第二个参数(这里是列表[3,6,8,4,5])的每个元素上,返回一个可迭代对象。在这个例子中,str函数将每个数字转换为字符串,所以最终的结果是一个包含字符串的列表['3','6','8','4','5']。使用list()函数将可迭代对象转换为列表。20.标准答案:A。试题解析:min("2345")返回的是字符串中ASCII码最小的字符,即"2",转换成int类型为2;max("14693")返回的是字符串中ASCII码最大的字符,即"9",转换成int类型为9;b+a,结果为11。21.标准答案:B。试题解析:ord()函数可以将字符转换为ASCII码,而ascii()函数则是将对象转换为ASCII码表示的字符串。chr()函数则是将ASCII码转换为字符,而encode()函数则是将字符串编码为指定格式的字节串。22.标准答案:A。试题解析:在bool函数中,除了0以外的所有数值都会被解释为True,而0则会被解释为False。因此选项A中的0会被解释为False。23.标准答案:D。试题解析:abs()函数的返回值类型取决于输入参数的类型。如果输入参数是整数或浮点数,则返回值也是整数或浮点数;如果输入参数是复数,则返回值是该复数的模长,即一个非负实数。因此,选项D是正确的。24.标准答案:A。试题解析:选项A中使用了sum函数来计算整数列表nums的和。sum函数接受一个可迭代对象作为参数,并返回所有元素的和。选项B中使用了中括号[]来调用sum函数,这是错误的语法使用。选项C中的第二个参数是一个空列表[],在sum函数中并没有这种用法。选项D中的第二个参数是一个初始值0,但sum函数在没有指定初始值时,默认为0,因此该参数可以省略。因此,答案为sum(nums)。25.标准答案:C。试题解析:程序中使用了enumerate()函数来遍历一个包含水果名称的列表,并将每个元素的索引和值分别存储在i和fruit中。在循环体中,使用print()函数将i和fruit打印出来。因此,输出结果为"0apple,1banana,2orange"。因此,选项C是正确的。26.标准答案:正确。试题解析:十六进制3C转换为十进制为60,再转换成八进制为74。27.标准答案:错误。试题解析:如果try程序段中出现了运行错误的语句,那么会根据错误的具体情况,进入对应的except程序段,不会把每个except程序段都执行。28.标准答案:正确。试题解析:考核将列表对象输出为CSV格式文件。29.标准答案:错误。试题解析:在Python中使用open()函数打开文件,并返回一个文件对象,然后通过文件对象对文件进行读写操作。30.标准答案:错误。试题解析:考核将包含多个换行符的字符串写入文件,但是重新生成文件,不会在原来文件的基础上添加三行字符串。31.标准答案:错误。试题解析:abs(-3.14)的运行结果是3.14。32.标准答案:正确。试题解析:在这个例子中,{"name":"Alice","age":25}是一个字典,其中"name"和"age"是键,"Alice"和25是对应的值。使用type()函数可以获取一个对象的类型,type({"name":"Alice","age":25})的结果是dict,与dict进行比较的结果是True。33.标准答案:正确。试题解析:format()函数可以通过格式化字符串来指定变量的类型、精度、对齐方式等格式选项,从而生成不同的字符串。在这个例子中,"{:.2f}"表示将浮点数格式化为保留两位小数的字符串,所以3.1415926会被格式化为"3.14"。因此正确。34.标准答案:正确。试题解析:因为"w"模式表示写入模式,如果文件已经存在,那么打开文件时会将文件指针指向文件的开头,然后开始写入新的内容,这样就会覆盖掉原有的内容。所以此说法正确。35.标准答案:正确。试题解析:二进制末尾加0,则是把二进制中每个数扩大2倍。例如(11)2=21+20;末尾加入0后是110,22+21=2*(21+20)。36.参考程序。n=int(input('请输入整数:'))count=0i=1whilei<=n:x=iwhilex>0:ifx%10==1:count=count+1x//=10i=i+1print(n,'范围内1的个数有:',count)评分标准。(1)count=0或等效答案;(2分)。(2)i<=n或等效答案;(2分)。(3)x%10==1或等效答案;(3分)。(4)i=i+1或等效答案。(3分)。37.参考程序。defeven(x):returnx%2==0c=[3,7,1,18,9,12,5,2,22,10]n=len(c)h=[]foriinrange(0,n-1):forjinrange(0,n-i-1):ifc[j]>c[j+1]:c[j],c[j+1]=c[j+1],c[j]foriinrange(0,n-1):h=filter(even,c)ans=list(h)print(ans)评分标准。(1)len(c)或等效答案;(3分)。(2)range(0,n-1)或等效答案;(3分)。(3)c[j]>c[j+1]或等效答案;(3分)。(4)c[j+1],c[j]或等效答案;(3分)。(5)even或等效答案。(4分)。38.参考程序。importcsvwithopen("/data/myd.csv")asf:cont=list(csv.reader(f))qk={"第1题":0,"第2题":0,"第3题":0,"第4题":0,"第5题":0}forrowincont[1:]:#或者1:len(cont)。foriinrange(len(row)):ifrow[i]=='A':#或者"A"。qk["第"+str(i+1)+"题"]+=1foriinrange(5):print("第"+str(i+1)+"题选A的人数为:"+str(qk["第"+str(i+1)+"题"]))评分标准。(1)myd.csv或等效答案;(1分)。(2)1:或者1:len(cont)或等效答案;(1分)。(3)'A'或者"A"或等效答案。(2分)。2024年3月青少年软件编程Python等级考试一级真题(含答案和解析-在末尾)。一、单选题(共25题,共50分)。1.下列哪个命令,可以将2024转换成'2024'呢?()。A.str(2024)B.int(2024)C.float(2024)D.bool(2024)2.猴子摘了一包桃子,第一天吃了全部的一半;第二天,吃剩下的(注意是剩下的)桃子的一半;以后每天都吃前一天剩下的一半;第四天吃完剩下的一半,发现只剩下一个桃子了。请问:猴子一开始摘了几个桃子?()。A.4B.8C.16D.323.在编写Python代码中,经常对代码进行缩进,下列哪一选项的按键可以作为推荐使用的缩进标准键?()。A.'''B.#C.空格键D."""4.下列关于IDLE中操作的描述,错误的是?()。A.可以使用File菜单中的NewFile命令新建文件B.File菜单中的RunModule命令是只用来保存程序的C.在交互模式下,可以输入exit()可以退出交互模式。D.可以使用File菜单中的Open命令打开文件5.下列turtle工具箱的语句,哪一项绘制出的形状与其他项不同,不是同一种类型的形状?()。A.turtle.forward(100)B.turtle.backward(-100)C.turtle.goto(100,0)D.turtle.dot(100)6.下列不属于比较运算符的是哪一项?()。A.!=B.>=C.<=D.=7.中心小学一年级(1)班有40名学生,参加学校运动会需要每7名学生排成一列,计算剩余未能排成完整一列的学生人数,可以使用以下哪个程序来完成计算?()。A.print('还有未能排列的人数:',40+7)B.print('还有未能排列的人数:',40*7)C.print('还有未能排列的人数:',40/7)D.print('还有未能排列的人数:',40%7)8.执行以下语句,并分别输入1以及2,结果为?()。a=int(input())b=int(input())print(a+b)A.3B.1C.2D.129.以下代码的运行结果是什么图形?()。importturtlet=turtle.Pen()t.forward(100)t.left(120)t.forward(100)t.left(120)t.forward(100)A.圆形B.正方形C.平行四边形D.三角形10.题“天生我材必有用,千金散尽还复来”出自唐代诗人李白的《将进酒》,请你仔细查看下列Python程序,若输入下一句为:千金散尽还复来,那么程序运行结果是?()。print("天生我才必有用")verse=input("请输入下一句:")print(verse)11.已知a=1,b=2,观察下列程序,运行结果是?()。A.6B.5C.4D.312.题print(8/4==8.0//4),请问输出结果是?()。A.2B.2.0C.FalseD.True13.利用turtle库画图时,画笔默认的起始位置在画布的坐标点是?()。A.(0,0)B.(100,0)C.(0,100)D.(100,100)14.题Python计算100/2的结果是?()。A.50.0B.50C.50.00D.20015.如何设置turtle画笔的颜色为红色?()。A.turtle.color(red)B.turtle.pencolor("red")C.turtle.fillcolor("red")D.turtle.bgcolor("red")16.如果a=6,b=2,则表达式a%b==0的结果是?()。A.TrueB.FalseC.6D.217.在下面代码中的横线处填写哪个选项的内容,执行代码后可以输入一个数字,然后计算并打印这个数字加5的和?()。a=________b=5print(a+b)A.int()B.input()C.int(input())D.input(int())18.下列哪个选项可以将Turtle窗口的大小设置为宽400像素,高300像素,将窗口的初始位置设置为距离屏幕左边缘200像素,距离屏幕上边缘100像素?()。A.turtle.setup(200,100,400,300)B.turtle.setup(400,300,200,100)C.turtle.setup(400,200,300,100)D.turtle.setup(200,400,100,300)19.执行代码print(27and56),打印结果为?()。A.TrueB.FalseC.27D.5620.使用Python画笔绘制如下图所示的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年肾小管间质纤维化诊疗试题及答案(肾内科版)
- 滑膜交界性肿瘤护理查房
- 2026年合肥市公开遴选公务员笔试试题及答案解析(市直类)
- 《跨境电商基础》教案-项目五 跨境电子商务选品
- 《婴幼儿学习与发展》课件-7.第三节行为主义学习理论…
- 2026八年级道德与法治上册 社会成就建设
- 2026八年级道德与法治上册 以礼待人的相处之道
- 2026道德与法治五年级知识窗 社会保障知识
- 2026道德与法治二年级知识窗 固体废物处理
- 2026年丙二醇甲醚乙酸酯行业分析报告及未来发展趋势报告
- 当代中国经济教学知识考试复习题库(附答案)
- 2025-2026学年统编版道德与法治八年级下册期中模拟检测试题(含答案)
- 髋臼骨折诊疗指南
- 2025年人寿保险公司基本法
- 发药差错防范培训
- 2026年中国银行金融科技岗笔试考前核心考点练习题及解析
- 市县医院骨科、麻醉科加速康复实施管理专家共识解读课件
- 2021北京市中考数学真题及答案解析
- MOOC 森林植物识别技术 -珍稀植物识别-南京森林警察学院 中国大学慕课答案
- GB/T 4798.6-2012环境条件分类环境参数组分类及其严酷程度分级船用
- GB/T 15543-2008电能质量三相电压不平衡
评论
0/150
提交评论