2022年12月青少年软件编程Python三级真题试卷
一、单选题 (共25题,共50分)
1) 列表L1 中全是整数,小明想将其中所有奇数都增加1,偶数不变,于是编写了如下所示的代码。请问,代码中红线处,代码应该是? (  )
L1=[3,2,5,6,4,7,3,9,11,17,19,12]
L2=[x+1 if(________)!=0 else x for x in L1]
print(L2) 




查看答案
2) 小明为了学习选择排序的算法,编写了下面的代码。针对代码中红色文字所示的一、二、三处,下面说法正确的是? (  )
a =[8,4,11,3,9]
count =len(a)
for i in range(count-1)
    mi = i
    for j in range(i+1,count):
        if a[mi]>a[j]:  #代码一
            mi =j  #代码二
    if i!=mi:
        a[mi],a[i]=a[i],a[mi]  #代码三
print(a)




查看答案
3) 小明编写了一段演示插入排序的代码,代码如下。请问在“缺失代码”处,应该填写哪段代码? (  ) 
a =[8,4,11,3,9]
count =len(a)
for i in range(1,count)
    j=i
    b=a[i]
    while j>0 and b<a[j-1]:
        a[j]=a[j-1]
        缺失代码
        a[j]=b
print(a)




查看答案
4) 在计算机中,信息都是采用什么进行存储? (  )




查看答案
5) 十进制数(100)10,转化为二进制数为 (  )?




查看答案
6) 十六进制数每一位至多可以表示几位二进制位? (  )




查看答案
7) 八进制数(35)8,转化为十进制数为 (   )10?




查看答案
8) print(max('python+')) 的运行结果是? (  )




查看答案
9) 下面代码运行结果是? (  )
a=5.12596
print(round(a,2))




查看答案
10) 执行代码 a=min(3,2,4.3), 变量a 的值是? (  )




查看答案
11) type([{2.6}]) 运行的结果是?  (  )




查看答案
12) 执行如下代码,运行结果是? (   )
a=[1,2,3,4]
print(list(enumerate(a)))




查看答案
13) set('hello’)运行结果是? (   )




查看答案
14) print(sum([5,10,min(7,4,6)])) 的运行结果是? (  )




查看答案
15) divmod(100,3) 的执行结果是? (   )




查看答案
16) 下列表达式结果是False 的是? (  )




查看答案
17) 将字符串或数字转换为浮点数的函数是? (   )




查看答案
18) 以下表达式的值为True 是? (   )




查看答案
19) 有这样一段程序:

a=[“香蕉“,”苹果”,”草莓”,“哈密瓜”]
fs=open(“fruits.csv”,”w”)
fs.write(“,”.join(a)+‘\n’)
fs.close()
该段程序执行后,该csv 文件中的内容是? (  )





查看答案
20) 关于文件的读写操作,下列说法不正确的是? (   )




查看答案
21) 关于下列列表,说法正确的是? (   )
s=[[“佩奇”,“100”,“86”,“85”,“90”],[“苏西”,“78”,“88”, “98”, “89”],[“佩德罗”,“80”,“66”, “80”, “92”]]




查看答案
22) 有关于write() 函数的说法正确的是? (   )




查看答案
23) 对于在 csv 文件中追加数据,下列说法正确的是? (  )




查看答案
24) Python 的异常处理 try....except...else..finally 机制中,以下哪部分语句一定能得到全部执行? (   )




查看答案
25) Python 的异常处理机制中,以下表述哪项是错误的? (   )




查看答案
二、 判断题 (共10题,共20分)
26) 二进制数转化为十进制数的方法是:按权展开、逐项相加,如: (101)2=(10)10。

查看答案
27) 语句 print(round(2.785,2)) 运行后的结果是2.79。

查看答案
28) map() 不会根据提供的函数对指定序列做映射。

查看答案
29) 语句print(tuple(range(5))) 的输出结果是(0,1,2,3,4)。

查看答案
30) 运行语句set(′2022’),其输出结果是{’2’,’0',’2’,’2’}

查看答案
31) 下面代码的功能是读取文件中的数据到列表。
f=open('ss.csv','r')
n=f.read().strip(“\n”).split(“,”)
f.close()

查看答案
32) 一维数组可以用列表实现,二维数组则不能用列表实现。

查看答案
33) 用 with open(‘fruits.csv’,’r’) as f 语句,打开fruits.csv文件,在处理结束后不会自动关闭被打开的文件,因此需要写上 f.close() 语句。

查看答案
34) 异常处理结构中, finally 程序段中的语句不一定都会得到执行。

查看答案
35) 在计算机中,每一个二进制位可以表示0和1两种信息。

查看答案
三 、编程题 (共3题,共30分)
36) 下面程序实现对二维数据的处理,请你补全代码。
小鹏STEM题库
f=open('/data/score2.csv',’r') a=[]
for i in f:
    a.append(i.strip().split(',’))
f.close()
________①________
for   i   in    a:
    s=’’
    for j in i:
        ________②________
    print(s)
程序执行结果为:
[[’王鑫’,’86',’90',’92’,’99',’94',’95’],[’杨小虹’,’93’,’97’,’95',’90', ’86’,’85'], [’李静’,’89',’98',’99',’94',’90',’85']]

王鑫 86 90 92 99 94 95
杨小虹 93 97 95 90 86 85
李静 89 98 99 94 90 85
查看答案
37) 在三位数的自然数中,找出至少有一位数字是5的,至少能被3整除的所有整数, 并统计个数,具体代码如下:
count=0
1st=[]
for i in range(________①________):
    if i%3==0:
        a=i%10
        b=i//10%10
        c=________②________
        if________③________:
            count+=1
            lst.append(i)
print("这样的三位数有:", 1st)
print("总数量有:",count)
查看答案
38) 输入一个正数,以下代码编程求出它的平方根。请你补全代码。
in_var=float(input(“请输入一个需要开方的正数,可以使用2位小数:\n x=”))
if in_var<0:
    x =-in_var
else:
    x =in_var
low =0.0
high =x
s_root = ________①________
if x>0 and x<1:
high =1.0
low =0
s_root = ________②________
if x >=0:
    while abs(________③________) )>0.0001:
        if x>1.0:
            if s_root**2=0:
    print(“所求数的平方根为: s_root=%.1f”%(s_root))
查看答案