试卷 2023年9月青少年软件编程Python等级考试(三级)试卷
2023年9月青少年软件编程Python等级考试(三级)试卷
单选题
第 1 题    单选题

有一组数据存在列表中,things=["桌子","椅子","茶几","沙发","西瓜","苹果","草莓","香蕉"],若想要输出其中的水果数据,则下列处理恰当的是?( )

A.

print(things)

B.

print(things[:4])

C.

print(things[4:])

D.

print(things[5:8])

第 2 题    单选题

下面程序运行的结果是?( )

a='hello python'
print(a,end='_')
print(a,end="")
print(a)
A.

hello python_

hello pythonhello python

B.

hello python_hello pythonhello python

C.

hello python_hello python hello python

D.

hello python_hellopythonhellopython

第 3 题    单选题

以下表达式的值为True的是?( )

A.

bool([])

B.

bool("0")

C.

bool(None)

D.

bool(range(0))

第 4 题    单选题

执行 print('{:.1f}'.format(23.792)) 返回的结果是?( )

A.

23

B.

23.0

C.

23.8

D.

23.792

第 5 题    单选题

Python语句print(ascii('A')+ascii('Z')) 运行的结果是?( )

A.

'A'+'Z'

B.

'AZ'

C.

'A''Z'

D.

"AZ"

第 6 题    单选题

关于open()函数的参数,下列描述不正确的是?( )

A.

'r'以只读方式打开文件,如果文件不存在,则会提示错误

B.

'w'以写入的方式打开文件,如果文件不存在,则会提示错误

C.

'a'打开文件,并将新内容写入到已有内容之后

D.

'r+'以读、写方式打开文件

第 7 题    单选题

下列程序运行的结果是?( )
h=[2,-3,-5,-6,0,-1,4,9]
y=list(filter(None,h))
print(y)

A.

[2, -3, -5, -6, -1, 4, 9]

B.

(2, -3, -5, -6, -1, 4, 9)

C.

[2, 4, 9]

D.

(2, 4, 9)

第 8 题    单选题

下列程序运行结果是 False的是?( )

A.

print(all(['1','2','3']))

B.

print(all(()))

C.

print(all(('1','2','3','4','5')))

D.

print(all(['1','2','3','']))

第 9 题    单选题

print(divmod(29,7))的运行结果是?( )

A.

4, 1

B.

(4, 1)

C.

1, 4

D.

(1, 4)

第 10 题    单选题

关于Python中abs()函数,描述不正确的是?( )

A.

abs()函数的功能是取一个整数的绝对值

B.

abs(0)的运行结果是0

C.

abs(3.0)的运行结果是3.0

D.

abs(-3)的运行结果是3

第 11 题    单选题
运行下面的程序,结果是?( )
h=[-2,-1,0,1,2,3]
n=len(h)
s=0
for i in range(n):
    s=s+bool(h[i])   
print(s)
A.

0

B.

1

C.

5

D.

6

第 12 题    单选题

想要找出小于100的所有质数,适用的算法是?( )

A.

解析算法

B.

枚举算法

C.

对分查找

D.

选择排序

第 13 题    单选题

对一组数据[5, 2, 6, 4, 8, 1, 7, 3]进行排序,使用冒泡排序按从大到小的顺序进行排列,则第2轮排序过后的结果是?( )

A.

2, 4, 5, 1, 6, 3, 7, 8

B.

6, 5, 8, 4, 7, 3, 2, 1

C.

5, 6, 4, 8, 2, 7, 3, 1

D.

5, 6, 4, 8, 7, 3, 2, 1

第 14 题    单选题

列表中有6个数据,使用冒泡排序算法进行从小到大排序,最多需要处理几遍?( )

A.

3

B.

4

C.

5

D.

6

第 15 题    单选题

初学者常采用异常处理解决程序中出现的意外情况,下面语句的执行结果是?( )
try:
    s1 = '我爱中国'
    s2 = 2023
    s   = s1 + s2
    print(s)
except:
    print('错误')
finally:
    print('程序结束'')

A.

我爱中国2023

程序结束

B.

错误 

程序结束

C.

我爱中国2023

D.

错误

第 16 题    单选题

键盘输入“杭州亚运会即将于2023年9月23日至10月8日举办。”,以下代码的输出结果是?( )
try:
    n=input("请输入文字:")
    x=n.count("2")
    print(x)
except:
    print("程序执行错误"

A.

程序执行错误

B.

2

C.

3

D.

15

第 17 题    单选题

下列4个表达式中,答案不是整数6的是?( )

A.

abs(-6)

B.

int(6.88)

C.

round(5.55)

D.

min(float(6),9,8,7)

第 18 题    单选题

int()函数可以将非十进制数或数字字符串转换为十进制数,以下关于int()函数的使用,正确的是?( )

A.

int("0b1010",10)

B.

int("1010",10)

C.

int("0o50",10)

D.

int("80",8)

第 19 题    单选题

十六进制数100,对应的十进制数是?( )

A.

128

B.

256

C.

28

D.

56

第 20 题    单选题

运行函数 hex() 之后,得到结果是'0xa',请问括号中号处应填?( )

A.

"9"

B.

9

C.

"10"

D.

10

第 21 题    单选题

有关于简单文件的读写,下列说法正确的是?( )

A.

可以用Python内置的open()函数打开文件

B.

对文件进行读取操作,我们可以用write()函数

C.

对文件进行写入操作,我们可以用close()函数

D.

关闭文件可以用read()函数

第 22 题    单选题
有如下代码:
gs=['众鸟高飞尽','孤云独去闲','相看两不厌','只有敬亭山']
f=open('jts.txt','w')
f.write(','.join(gs)+'\n')
f.close()

有关于上述代码,正确的说法是?( )
A.

在执行代码前,必须要先新建一个"jts.txt"的文件

B.

在文件"jts.txt"中,所有相邻诗句之间将发生换行

C.

f.write(','.join(gs)+'\n')也可以用f.write('\n'.join(gs)+',')替换,显示结果是相同的

D.

该段代码的主要功能是将列表gs中的四句古诗写入到"jts.txt"文件中,诗句之间以逗号连成一行

第 23 题    单选题

小贝、小李和小司三人三次跳绳的成绩数据如下:tscores=[["小贝",132,126,130],["小李",117,120,123],["小司",129,140,137]],若要输出小李同学的最好成绩,则正确的处理方式是?( )

A.

max(tscores[1])

B.

max(tscores[1][1:])

C.

tscores[1].max()

D.

tscores[1][1: ].max()

第 24 题    单选题

学期末学校进行了体育测试,其中跳绳项目每人有三次机会,取最好的成绩为最后得分。小贝、小李和小司三人的成绩数据如下:tscores=[["小贝",132,126,130],["小李",117,120,123],["小司",129,140,137]],那么要得到小贝的第二次成绩,下列操作正确的是?( )

A.

tscores[0][2]

B.

tscores[1][1]

C.

tscores[0[2]]

D.

tscores[1[1]]

第 25 题    单选题

小明运行下面的程序,运行结果正确的是?(
h=[6,15,1,0,7,9,5]
p=sorted(h)
print(p)

A.

(0, 1, 5, 6, 7, 9, 15)

B.

(15, 9, 7, 6, 5, 1, 0)

C.

[0, 1, 5, 6, 7, 9, 15]

D.

[15, 9, 7, 6, 5, 1, 0]

判断题
第 26 题    判断题

在计算机中,每个二进制位都可以表示为 0 或 1 两个值。( )

A.
正确
B.
错误
第 27 题    判断题

help()函数用于查看函数或模块用途的详细说明,返回对象为帮助信息。( )

A.
正确
B.
错误
第 28 题    判断题

命令 any(('1','','2','3')) 返回的结果是 False。( )

A.
正确
B.
错误
第 29 题    判断题

已知字符"0"的ASCII码为48,字符"A"的ASCII码为65,下面程序的运行结果是:65 。( )
c='A'
n=48
print(ord(c)+chr(n))

A.
正确
B.
错误
第 30 题    判断题

键盘输入整数8,以下代码的运行结果是4.0。( )
try:
    n = input('请输入一个整数:')
    n = n / 2
    print(n)
except:
    print('程序执行错误'

A.
正确
B.
错误
第 31 题    判断题

关于语句f=open('d:/a.txt', 'r'),如果文件a.txt不存在,不会报错。( )

A.
正确
B.
错误
第 32 题    判断题

有如下函数:
with open("english.txt",'r')as f:
    list1=f.readlines()
print(list1)
这段函数的功能是自动将"english.txt"文件中的内容获取成一个行的列表并输出。( )

A.
正确
B.
错误
第 33 题    判断题

对文件操作需要先打开文件,打开文件的模式只有'r'和'w',即只读和只写。( )

A.
正确
B.
错误
第 34 题    判断题

有这样一个表达式: 
ord('a') - ord('A') 
这个表达式运行的结果是整数 32 ,请判断结果对吗?( )

A.
正确
B.
错误
第 35 题    判断题

下列程序的运行结果是 11。( )
a=max(2,4,1,8,9)

b=min("3","8","9","2","10")

print(a+int(b))

A.
正确
B.
错误
编程题
第 36 题    问答题

下面代码,在字典a中查找身高为137的人,请将代码中缺失部分补充完整。
a = {'小赵':136,'小钱':141,'小孙':146,'小李':138,'小周':142,'小吴':134,'小郑':137,'小王':143}
keys = a.keys()
b = 0  # 用于判断查找是否成功
for key in keys:
    value = a[                ]
    if                == 137:
        print('找到身高为137的人是: ', key)
        b = b+1  # 有找到的人
                        # 退出循环

if b == 0 :

    print('本次查找,未找到有身高为137的同学。 ')

第 37 题    问答题

张老师手上有一份学生成绩单(cj.txt),成绩单上只有每位学生的各科成绩,而张老师希望能看到各科成绩的所有学生的平均分,以下代码可以实现平均分的计算,并按示例格式排版,请补充代码。

示例:

with open('/data/cj.txt',                ) as f:

    string = f.read()

    data = string.split('\n')

    data.pop(0)

    lis = []

    for i in data:

        new = i.split('\t')

        lis.append(new)# 将分割得到的列表追加到空列表中,lis 为二维

    lis1 = ['平均分']

    for i in range(1,4):# 循环3次,因为需要计算3个科目的平均分

        sum_ =                 

        average = round(sum_ / 3)

        lis1.append(str(average))

    s = "\t".join(lis1)

    res = string + s

with open('cj1.txt', 'w') as f:

    f.write(res)

第 38 题    问答题

工厂有一台检测设备用于检测器件,各个器件在不完全相同时刻送达,且检测时长各有不同。现在要按器件的送达时间(若送达时间相同则按检测时长)进行排序后再送检,送达时间和检测时间都是按升序排序。已知各个器件原始信息存在列表qj中:qj=[[2,1],[1,3],[0,2],[4,3],[12,4],[10,1],[4,1]],其中器件信息[2,1]表示器件送达时间是2,检测时长是1,其他器件信息类推。现在编写Python程序对各个器件进行排序,并重新输出。排序后的器件列表如下,请你在划线处完善程序:

IMG_258

qj=[[2,1],[1,3],[0,2],[4,3],[12,4],[10,1],[4,1]]

for i in range(len(qj)-1):

    for j in range(0,                ):

        if                 or (qj[j][0]==qj[j+1][0]and                 ):

            qj[j],qj[j+1]=qj[j+1],qj[j]

print(                )

答题卡
单选题
判断题
编程题
36 37 38
题目总数:38
总分数:100
时间:90分钟