青少年软件编程(Python三级)等级考试试卷(2021年12月)

2023年05月26日

选择题

第 1 题 单选题

小明在学习计算机时,学习到了一个十六进制数101,这个十六进制数对应的十进制数的数值是?( )

A.65

B.66

C.256

D.257

第 2 题 单选题

csv文件中读入数据的程序段如下:

f=open("city.csv","r")
ls=[]
for line in f:
   ls.append(line.strip("\n").split(","))
f.close()
print(ls)

与划线处等同功能的语句是?( )

A.line.pop("\n")

B.line.del("\n")

C.line.remove("\n")

D.line.replace("\n","")

第 3 题 单选题

下列表达式的结果与其他三项不相同的是?( )

A.abs(-4)

B.round(abs(-3.5))

C.abs(round(-3.5))

D.min(round(-3.5),round(3.8))

第 4 题 单选题

表达式max([111,22,3],key=str)的值为?( )

A.3

B.111

C.’3’

D.’111’

第 5 题 单选题

下列不能产生结果为元组(1, 2, 3, 4)的是?( )

A.1, 2, 3, 4

B.tuple({1:2,3:4})

C.tuple((1,2,3,4))

D.tuple([1,2,3,4])

第 6 题 单选题

不能实现打开文件的功能的语句是?( )

A.f = open('D:/city.csv', 'w')

B.f = open('D:\city.csv', 'w-')

C.f = open('D://city.csv ', 'w')

D.f = open('D:\city.csv ', 'w')

第 7 题 单选题

关于十进制数,下列说法错误的是?( )

A.十进制数的基数为10,所以从小数点向左数第二位的权值是10的2次幂

B.十进制数的基数为10,所以里面包括0,1,2……,9这十个数码

C.十进制数的基本运算规则满足“逢十进一”,所以有时我们可以采用凑十法来进行简便运算

D.十进制数是有符号的,如-18

第 8 题 单选题

关于Python的序列描述,不正确的是?( )

A.序列是Python中最基本的数据结构

B.最常见的序列是列表和元组

C.序列中表示元素位置的数字叫做索引,索引都是正整数

D.Python内置了求序列长度的函数

第 9 题 单选题

关于元组,描述不正确的是?( )

A.元组是用括号把元素括在一起的,元素之间是用逗号分隔的

B.元组可以为空,写做tup1=()

C.元组中可以只有一个元素,写做tup1=(3)

D.元组中的元素可以具有不同的类型

第 10 题 单选题

以下程序的输出结果是?( )

x = 2
y = 0
try:
	z = x / y
	print(z)
except ZeroDivisionError:
	print('error')

A.z

B.2.0

C.error

D.没有输出

第 11 题 单选题

排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。下列排序算法中效率最高的是?( )

A.冒泡排序算法

B.选择排序算法

C.插入排序算法

D.快速排序算法

第 12 题 单选题

bool()函数根据传入的参数的逻辑值创建一个新的布尔值,下列返回值是False的是?( )

A.bool(2*3-0)

B.bool(2*3-2)

C.bool(2*3-3)

D.bool(2*3-6)

第 13 题 单选题

下列函数能创建一个新的元组的是?( )

A.tuple()

B.list()

C.dict()

D.set()

第 14 题 单选题

ascii()返回一个表示对象的字符串,则ascii(1)的结果是?( )

A.1

B.'1'

C."'1'"

D."'\u4e2d\u6587'"

第 15 题 单选题

下列输出结果为"1+2+3=?"的是?( )

A.print(1+2+3=?)

B.print(1+2+3,'=?')

C.print(1,2,3,sep='+',end='=?')

D.print(1,2,3,sep='+','=?')

第 16 题 单选题

a = max('12345'),下列选项中语法正确的一项是?( )

A.print(min(float(a),7,6))

B.print(min(chr(a),7,6))

C.print(min(bin(a),7,6))

D.print(min(hex(a),7,6))

第 17 题 单选题

运行结果与其他三项不同的是?( )

A.sum([1,2,3],4)

B.sum([0,1,2],[3,2,2])

C.sum([2,2,2],max(4,3,2))

D.sum([0,3,4],int('3'))

第 18 题 单选题

关于列表和元组的关系,下列描述不正确的是?( )

A.list() 函数可以将元组转换为列表

B.tuple()函数可以将列表转换为元组

C.元组和列表是非常类似的,它们可以通过类型转换函数进行互相转换

D.元组和列表本质上没有区别,只是元组是放在括号中,列表是放于方括号中而已

第 19 题 单选题

当发生异常时,下列描述不正确的是?( )

A.我们需要捕获异常,然后进行相应的处理

B.我们需要把可能发生错误的语句放在try模块里

C.我们需要把处理异常的语句放在except模块里

D.我们需要为每一个try模块设定且只能设定一个except模块

第 20 题 单选题

在Python中,int('10',2)语句的作用是?( )

A.将十进制数10转化为二进制数1010

B.将二进制数10转化为十进制整数

C.将字符串“10”转化为二进制整数

D.将字符串“10”转化为十进制整数

第 21 题 单选题

以下描述中,错误的选项是?( )

A.在Python中,0b100010表示二进制数100010

B.Python中int('1a32',2)语句执行时将不能得到结果,会出现错误提示

C.Python中0o、0b、0x依次表示二进制、八进制、十六进制数的前缀

D.在Python中,运行hex(89)得到的结果是'0x59'

第 22 题 单选题

Python文件常用的写入方式有w和w+,它们的相同点是?( )

A.追加读

B.追加写

C.可读可写

D.文件不存在先创建,会覆盖原文件

第 23 题 单选题

有如下程序段:

for i in range(5):
   print(i,end=',')

输出结果是?( )

A.0,1,2,3,4

B.0,1,2,3,4,

C.1,2,3,4,5

D.1,2,3,4,5,

第 24 题 单选题

有如下列表l=[7,2,9,6,4,5],采用冒泡排序进行升序排序,请问第3趟排序之后的结果是?( )

A.[2,4,5,6,7,9]

B.[2,4,5,7,6,9]

C.[2,4,7,5,9,6]

D.[2,7,4,9,6,5]

第 25 题 单选题

有如下列表l=[7,6,3,8,4,1],采用选择排序进行升序排序,请问第3趟排序之后的结果是?( )

A.[1,3,4,6,7,8]

B.[1,3,6,8,4,7]

C.[1,6,3,8,4,7]

D.[1,3,4,8,6,7]

判断题

第 26 题 判断题

在Python中,0x100010表示十六进制数100010。

A.正确 B.错误

第 27 题 判断题

在Python中,可以使用下面代码读取文件中的数据到列表 。

file = open('score.csv','r')
name = file.read().strip('\n').split(',')
file.close()

A.正确 B.错误

第 28 题 判断题

在Python中open('name.csv','r')命令的作用是以可写入的方式打开文件名为name的csv格式文件。

A.正确 B.错误

第 29 题 判断题

在Python中,print(abs(8-12)*3)的输出结果为-12。

A.正确 B.错误

第 30 题 判断题

在Python中,divmod(98,8)的输出结果为(2,12)。

A.正确 B.错误

第 31 题 判断题

在Python中,chr(ord('a')-32)语句能将小写字母a转换为大写字母A。

A.正确 B.错误

第 32 题 判断题

在Python中,sorted()函数可以实现对列表中数据的排序,排序后原列表中数据的位置发生变化。

A.正确 B.错误

第 33 题 判断题

bin函数可以将十进制数转换成二进制数。在Python交互式编程环境下,执行语句bin(15)后,显示的运行结果是'1111'。

A.正确 B.错误

第 34 题 判断题

二维数据可以用二维列表表示,该列表的每一个元素对应二维数据的一行。

A.正确 B.错误

第 35 题 判断题

try...except结构的异常处理机制,当try代码段运行异常时,程序会跳到except代码段执行。

A.正确 B.错误

编程题

第 1 题 问答题

小白兔们每天早上都到草坪上做早操。做操前,首先要按照身高由矮到高排个队,下列代码实现了排队的功能。首先读取小白兔的只数,然后读取每只小白兔的身高信息,进行由矮到高的处理,最后输出排好队的每只小白兔的身高,请你补全代码。

n = int(input('请输入兔子的总只数:'))
a = []
for i in range(n):
	x = float(input('请输入身高'))
	a.append(  ①  )
a.    ②   
for i in     ③   :
	print(a[i])

第 2 题 问答题

n个灯排成一排,开始时都是关着的。现进行如下操作: 所有电灯的按钮按动一次;所有编号为2的倍数的电灯按钮按动一次;所有编号为3的倍数的电灯的按钮按动一次; …… 所有编号为n-1的倍数的电灯的按钮按动一次;所有编号为n的倍数的电灯的按钮按动一次。 最后请统计有多少只电灯是亮的。编写程序实现上述功能,或补全代码。

n=int(input())
	   a=[]
for i in range(  ①   ):
	 a.append(-1)
for i in range(1,n+1):
	for j in range(1,n+1):
	  if(      ②     ) == 0:
		a[j] =     ③     * -1
s=0
for i in range(1,n+1):
   if (a[i] ==     ④    ):
	  s=s+1
print(     ⑤    )

第 3 题 问答题

请读取文件IP.txt的数据,数据内容如下图显示:

文件中每一行存储一个IP地址,下列代码实现了读取数据,每次读取一行数据,都删除了行末的换行符,最后逆序输出文件中的每行IP地址,请你补全代码。

输出参考如下:

49.97.132.119

32.33.23.232

112.114.44.44

with open('  ①  ', 'r') as f:
	list = f.readlines()
for i in range(0, len(list)):
	list[i] = list[i].strip('  ②  ')
for i in range(    ③  ):
	print(list[i])
f.close()