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

关于语句f=open('c:/abc.csv', 'r'),下列描述不正确的是?

A.

f是变量名

B.

以只读方式打开文件;

C.

如果文件abc.csv不存在,会创建abc.csv;

D.

'c:/abc.csv'代表c盘中一个名为'abc.csv'的文件。

第 2 题    单选题

八进制7与十六进制7相加,其对应的十进制数是?

A.

21

B.

7

C.

14

D.

77

第 3 题    单选题

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

A.

将十进制数10转化为十六进制数16

B.

将十六进制数10转化为十进制数16

C.

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

D.

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

第 4 题    单选题

Python中表示合法的八进制整数是? 

A.

0o129

B.

0o12A

C.

0O1708

D.

0O120

第 5 题    单选题

二进制数101100111对应的十六进制数的数值是?

A.

6

B.

369

C.

167

D.

165

第 6 题    单选题

以下表达式的值为Fasle的是?

A.

all (())

B.

any(['0'])

C.

any((0,))

D.

all(['a','b'])

第 7 题    单选题

x = min('5678'),下列选项中语法错误的一项是?

A.

print(max(float(x),7,6))

B.

print(max(ord(x),7,6))

C.

print(max(bin(x),7,6))

D.

print(max(int(x),7,6))

第 8 题    单选题

执行代码a,b,c=sorted((1,3,2))之后,变量b的值为?

A.

1

B.

3

C.

2

D.

(1,3,2)

第 9 题    单选题

下列程序运行结果是?

a="2"
b="3"
c=int(a+b) 
print(c)
A.

5

B.

"5"

C.

5.0

D.

23

第 10 题    单选题

下列程序段在运行时输入"2",则输出结果是?

try:
    a=eval(input())
    print(a)
except NameError:
    print('Error!')
A.

”2”

B.

2.0

C.

Error!

D.

2

第 11 题    单选题

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

A.

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

B.

需要把可能发生错误的语句放在except模块里

C.

需要把处理异常的语句放在try模块里

D.

需要为每一个try模块设定且只能设定一个except模块

第 12 题    单选题
add=['北京','上海','广州','深圳'] 
f=open('city.csv','w') 
f.write(','.join(add)+'\n') 
f.close()

下列说法错误的是

A.

f=open('city.csv','w')说明当前是写入模式

B.

f.write(','.join(add)+'\n')语句改成f.write(' '.join(add)+'\n'),程序运行效果一样

C.

删除f.close()语句,不能正确保存文件

D.

当前程序的功能是将列表对象输出到CSV文件

第 13 题    单选题

有关Python文件常用读写方式的描述,错误的是?

A.

read() 每次读取整个文件

B.

read() 生成的文件内容是一个字符串

C.

readline() 每次只读取文件的一行

D.

readlines() 每次按行读取整个文件内容,将读取到的内容放到一个字符串中

第 14 题    单选题

对于a=len([2,3,4,5,[7,8],(9,10)]),a的值是? 

A.

4

B.

6

C.

8

D.

7

第 15 题    单选题

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

f=open("abc.csv","r")
m=[]
for lines in f:
   m.append(lines.strip("\n").split("\"))
f.close()
print(m)

程序中存在错误的地方是

A.

"r"

B.

lines.strip("\n")

C.

split("\")

D.

f.close()

第 16 题    单选题

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

A.

[7,8,6,3,8,9]

B.

[3,6,9,7,8,8]

C.

[7,6,3,8,8,9]

D.

[3,6,7,8,8,9]

第 17 题    单选题

有如下列表a=[8,7,9,6,3,8],采用冒泡排序进行降序排序,请问第2趟排序之后的结果是? 

A.

[9,8,7,6,8,3]

B.

[8,9,7,8,6,3]

C.

[9,8,7,8,6,3]

D.

[9,8,8,6,7,3]

第 18 题    单选题

关于算法的说法,下列说法正确的是?

A.

采用顺序查找算法,一定能找到数据

B.

算法必须有输入和输出

C.

对分查找算法不需要对数据进行排序

D.

顺序查找算法不需要对数据进行排序

第 19 题    单选题

下列函数能创建一个新的列表的是?

A.

sorted()

B.

list()

C.

dict()

D.

set()

第 20 题    单选题

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

A.

print(1+2+3=6)

B.

print(1+2+3,'=6')

C.

print(1,2,3,sep='+','=6')

D.

print(1,2,3,sep='+',end='=6')

第 21 题    单选题

下列关于表达式的计算结果,不正确的是

A.

bool(2*3-0)的值为“True”

B.

bool(2*3-2)的值为“True”

C.

bool(2*3-3)的值为“True”

D.

bool(2*3-6)的值为“True”

第 22 题    单选题

关于ascii()函数,描述不正确的是? 

A.

ascii()返回一个对象的字符串

B.

ascii()返回一个对象的ASCII码的值

C.

ascii()的返回值的类型必然是字符串

D.

ascii(1)的结果是"1"

第 23 题    单选题

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

A.

abs(-3.4)

B.

round(abs(-3.4))

C.

abs(round(-3.4))

D.

min(round(3.4),round(3.8))

第 24 题    单选题

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

A.

3.0

B.

3

C.

[3,1]

D.

(3,1)

第 25 题    单选题

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

A.

bool([])

B.

bool(None)

C.

bool("False")

D.

bool(range(0))

判断题
第 26 题    判断题

Python中,chr(ord('b')-32)语句的功能是将小写字母b转换为大写字母B。

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

Python中,表达式divmod(26,10) 的输出结果为(2,6)或(3,-4)。

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

Python中,sorted()函数可以实现对列表中数据的排序,但排序后不改变原列表中数据的位置。

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

Python中,执行print(ascii(ord('A')+12))语句,打印一个整型数值结果。

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

try-except-else-finally异常处理结构中,不论try程序段中的语句有没有错误,finally程序段中的语句都会得到执行。

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

Python中,向csv文件中写入数据时,用逗号合并列表name中的元素,可以使用f.write(','.join(name)+'\n')语句(f为文件对象名)。

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

Python中open('city.csv','r')命令的作用是以只读方式打开文件名为city的csv格式文件。

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

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

f = open('city.csv','r')
name = f.read().strip('\n').split(';')
f.close()
A.
正确
B.
错误
第 34 题    判断题

hex(int('12',16))的结果是'0x18’

A.
正确
B.

错误

第 35 题    判断题

Python中,0x10010转化为十进制数是18。

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

请读取某班级语文学科的成绩文件score.txt的数据,数据内容如下图显示:

下列代码实现了读取数据并对每个成绩从小到大排序后并输出,请你补全代码。

with open('/data/   ①   ', 'r') as f:
    list = f.readlines()
for i in range(0, len(list)):
    list[i] = list[i].strip('\n')
    list[i]=  (  ②  )
    (  ③  )
print(list)
f.close
第 37 题    问答题

查找“支撑数”。在已知一组整数中,有这样一种数非常怪,它们不在第一个,也不在最后一个,而且刚好都比左边和右边相邻的数大,你能找到它们吗? 输入一个数组,输出每个支撑数的数值以及它们在数组中位置编号。

示例:

输入:

    1 3 2 4 1 5 3 9 7 10 8 23 85 43

输出:

3   2

4   4

5   6

9   8

10   10

85   13

请编写程序实现上述功能,补全代码。

s=input()
x=s.split(' ')
a=[]
for i in range(0,len(x)):
   a.append(int(   ①   )
b=[]
c=[]
n=0
for i in range(1,   ②   ):
   if (a[i]>a[i-1] and   ③   ):
      b.append(a[i])
      c.append(   ④   )
 
for i in range(   ⑤   ):
   print(b[i],' ',c[i])
第 38 题    问答题

明明请你帮忙寻找100-999之间的所有“水仙花数”,并统计个数。“水仙花数”是指一个三位数各位数字的立方和等于该数本身。

例如:153=1*1*1+5*5*5+3*3*3。要求输出结果如下所示:

153

370

371

407

请编程实现上述功能,补全代码。

for i in range(   ①   ):
   x=i
   a=x % 10
   x= (   ②   )
   b=x % 10
   c=x // 10
   if (   ③   ):
      print(i)
答题卡
选择题
判断题
编程题
36 37 38
题目总数:38
总分数:100
时间:90分钟