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

下列代码的输出结果是?(

 x = 0x10

 print(x)

A.

2

B.

8

C.

10

D.

16

第 2 题    单选题

假设city.csv文件内容如下,那么下列代码的输出结果是?( )

f=open("city.csv","r")
 ls=f.read().split(",")
 f.close()
 print(ls)
A.

['巴哈马','巴林','孟加拉国','巴巴多斯\n白俄罗斯','比利时','伯利兹']

B.

['巴哈马','巴林','孟加拉国','巴巴多斯','白俄罗斯','比利时','伯利兹']

C.

['巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹']

D.

['巴哈马','巴林','孟加拉国','巴巴多斯','\n','白俄罗斯','比利时','伯利兹']

第 3 题    单选题

下列代码的输出结果是?(  

  d ={"大海":"蓝色","天空":"灰色","大地":"黑色"}

  print(d["大地"]) 

A.

“大地”

B.

大地

C.

"黑色"

D.

黑色

第 4 题    单选题

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

A.

20

B.

26

C.

24

D.

18

第 5 题    单选题

以下关于算法以及算法的描述,错误的是?(

A.

算法必须要在有限的步骤内完成

B.

算法每个步骤的含义必须是确切的

C.

算法必须有输入,但可以没有输出

D.

算法可以没有输入,但必须要有输出

第 6 题    单选题

下列代码的输出结果是?(  

for i in range(1,6):
if i%4== 0:
continue
else:
print(i,end =",")
A.

1,2,3,

B.

1,2,3,4,

C.

1,2,3,5,

D.

1,2,3,5,6,

第 7 题    单选题

要表示10种不同的信息,需要的二进制位数至少为?( )

A.

2

B.

3

C.

4

D.

5

第 8 题    单选题

小明想对列表arr = [5, 33, 21, 67, 39, 73, 7, 43 ]中的数值进行升序排序,于是他编写了“选择排序”程序,  在调试程序的过程,他故意将循环的次数改成了固定值,如下图所示。

 请问,现在这个程序执行之后print(arr)打印出的结果应该是?( )

A.

[5, 7, 21, 33, 39, 43, 67, 73]

B.

[5, 7, 21, 33, 39, 73, 43,67]

C.

[5, 7, 21, 67, 39, 73, 33, 43]

D.

[5, 7, 21, 33, 39, 73, 67, 43]

第 9 题    单选题

 表达式divmod(40,3)的结果是?( )

A.

13,1

B.

(13,1)

C.

13

D.

1

第 10 题    单选题

下列表达式的结果不为10的是?( )

A.

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

B.

sum((1,2,3),4)

C.

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

D.

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

第 11 题    单选题

下列不能用于异常处理结构中捕获特定类型的异常的语句是?(

A.

try-else语句

B.

try-except语句

C.

try-except-else语句

D.

try-except-finally语句

第 12 题    单选题

set() 函数通过交集、差集、并集等关系删除重复数据,创建一个无序不重复元素集。

 下列程序执行结果正确的是?(

 x=set("中国")

 y=set("美国")

 print(x & y ) 

A.

{'中国'}

B.

{'美国'}

C.

{'中美国'}

D.

{'国'}

第 13 题    单选题

表达式max(3,min(5,1,7))的结果是?( )

A.

1

B.

3

C.

5

D.

7

第 14 题    单选题

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

A.

[1,3,9,6,10,4]

B.

[1,9,6,3,4,10]

C.

[1,6,3,4,9,10]

D.

[1,3,4,6,9,10]

第 15 题    单选题

下列程序运行后的输出结果是?(  

for i in reversed(range(10, 0, -2)): 

print(i,end=" ")

A.

2 4 6 8 10

B.

0 2 4 6 8 10

C.

12345678910

D.

9 8 7 6 5 4 3 2 1 0

第 16 题    单选题

键盘输入数字10,以下代码的输出结果是?( )

 try:
 n = input("请输入—个整数: ")
 n= n*n
 except:
 print("程序执行错误")
A.

100

B.

10

C.

程序执行错误

D.

程序没有任何输出

第 17 题    单选题

下列代码的输出结果是?(  

n = 2

b=bool(n-2)

print(n, b) 

A.

2 0

B.

0 True

C.

2 False

D.

0 False

第 18 题    单选题

二维列表data中,元素"3"的表示是?( )

 data = [ [1,2], [3,4] ] 

A.

data[0][0]

B.

data[0][1]

C.

data[1][0]

D.

data[1][1]

第 19 题    单选题

下列能产生列表[1, 3, 5, 7, 9]的表达式是?( )

A.

list(range(0,9))

B.

list(range(1,10))

C.

list(range(0,9,2))

D.

list(range(1,10,2))

第 20 题    单选题

下列代码的执行结果是?(

 ls=[[1,2,3],[[4,5],6],[7,8]]

 print(len(ls))

A.

1

B.

3

C.

4

D.

8

第 21 题    单选题

执行语句x,y,z=tuple([2,1,3])之后,变量y的值为?( )

A.

1

B.

2

C.

[1]

D.

[2,1,3]

第 22 题    单选题

Python中表示合法的二进制整数是?( )

A.

0bC3F

B.

0B1010

C.

0B1019

D.

0b1708

第 23 题    单选题

表达式 all([1,True,True])的结果是?( )

A.

1

B.

False

C.

出错

D.

True

第 24 题    单选题

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

A.

f是变量

B.

'r'以只读方式打开文件

C.

如果文件a.txt不存在,不会报错

D.

‘d:/a.txt’是文件路径,代表d盘中一个名为‘a.txt’的文件

第 25 题    单选题

下列代码的输出结果是?(  

  lis=list(range(4))

  print(lis) 

A.

[0,1,2,3,4]

B.

[0,1,2,3]

C.

0,1,2,3,

D.

0,1,2,3,4

判断题
第 26 题    判断题

int('0x25',16)语句和int('25',16)语句都能实现将十六进制数0x25转换成十进制数的功能。

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

 enumerate() 函数将字符串、列表、元组、字典等组合为索引序列,同时列出数据和数据下标。

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

chr()函数用于将对象转换成字符串。

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

abs()函数的功能是将对小数进行取整,abs(-2.3)的运行结果是2。

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

二进制数 1010111转换为十六进制数是 A7。

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

CSV文件的每—行是一维数据,可以使用Python中的列表类型表示。

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

语句try-except-finally中finally语句无论异常是否发生都必须执行的语句。

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

数据可分为一维数据、二维数据和多维数据。

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

使用open()函数打开'food.csv'文件后,返回的是列表。

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

senson=["春","夏","秋","冬"]

 senson.remove("秋")

 print(senson)

   执行上面程序,结果为['春', '夏', '冬'] 

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

一个四位数,如果在它的左边加一个数字8,就可以得到一个五位数;如果在它的右边加一个数字6,就可以得到另一个五位数, 这两个五位数的和是121410。请问原来这个四位数是多少?  

现在请你编写程序,求出这个四位数。  

补全下面的代码:  

for a in range(  ①   ):
   for b in range(  ②   ):
     for c in range(0,10):
       for d in range(0,10):
         if (  ③   )+(  ④  ) == 121410:
           print(a,b,c,d)
第 37 题    问答题

请读取文件/data/subways.csv的数据,数据内容如下图显示:

下列代码实现了读取“学号”和“身高”信息,输出“身高”达到120的学号,请你补全代码。   

import csv 
      with open('/data/   ①     ') as f:  
        rows = list( csv.reader (f))  
         for row in rows[1:]:   
          if(int(row[1])>=120):  
             print(    ②     )
第 38 题    问答题

有一组数据[0,20,0,4,31]存放在nums中,请将列表中的所有零移动到列表尾。  

 

nums=[0,20,0,4,31]
 initLen = ①
 i=0
 j=0
 while i<nitLen:
 if ②:
 ③= nums[i]
 j+=1
 i+=1
 ④=( len(nums)-j)*[0]
 print(⑤)

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