试卷 2023年3月电子学会Python等级考试(三级)试卷真题
2023年3月电子学会Python等级考试(三级)试卷真题
选择题
第 1 题    单选题

divmod(8,5)的结果是?( )

A.

1

B.

3

C.

(1,3)

D.

[1,3]

第 2 题    单选题

已知AASCII码值为65

s=China

k=abs(-4.8)

则表达式ord(min(s))+k的值是?

A.

71.8

B.

63

C.

61

D.

62

第 3 题    单选题

运行下列python程序段:

try:
  a=int(input("请输入被除数:"))
  b=int(input("请输入除数:"))
  x=a/b
  print("商是:",x)
except:
  print("输入有错!请检查。")
else:
  print("正确!")
finally:
   print("程序结束。")

若输入a8b4,则输出结果是?

A.

商是:2

 

              正确!

B.

商是:2

 

正确!

 

程序结束。

C.

商是:2.0

 

程序结束。

D.

商是:2.0

 

正确!

 

程序结束。

第 4 题    单选题

现有水果价格数据jg=[[‘草莓’,15][‘梨子’,9],[‘苹果’,10][‘桔子’,4]],需要将其打印成二维表格数据形式,程序代码如下:

jg=[[‘草莓’,15][‘梨子’,9],[‘苹果’,10][‘桔子’,4]]

for row in range(len(jg)):

    for col in range(len(jg[row])):

        print____________,\t”)

上述划线处代码是?

A.

jg[row]

B.

jg[col]

C.

jg[col][row]

D.

jg[row][col]

第 5 题    单选题
a=["跳绳","跳高","跳远","铅球"] 
fs=open("sports.csv","w")
fs.write(" ".join(a)+'\n')
fs.close()

关于上述代码,下列说法正确的是?

A.

若”sports.csv”文件不存在,则程序出错

B.

程序的最后结果是:跳绳 跳高 跳远 铅球

C.

程序中的fs.close()代码可有可无

D.

w”参数表示不能修改原csv文件

第 6 题    单选题

数据的存储形式多种多样,如s1=[[“李亮”,“98][“王宁宁”,“95][“莫晓珍“,“88]]s2=[“李亮”,“98”,“王宁宁”,“95”,“莫晓珍“,“88],有关s1s2下列说法正确的是?

A.

都是用列表实现的

B.

s1是一维列表

C.

s2是二维列表

D.

要取出“王宁宁”同学的成绩,方法是一样的,用s1[4]s2[4]

第 7 题    单选题

某班有36人,王老师想给每位同学分配一个二进制的学号,那么该学号至少需要多少位?( )

A.

36

B.

5

C.

6

D.

7

第 8 题    单选题

十进制数111转换成二进制数是?( )

A.

111

B.

1111011

C.

101111

D.

1101111

第 9 题    单选题

如果需要使用open函数以可读可写的方式打开一个存储二维数据的CSV文件,则open函数的文件打开模式不能设置成?( )

A.

rw

B.

r+

C.

w+

D.

a+

第 10 题    单选题

一维数据可以存储在CSV格式文件中,下列描述正确的是?( )

A.

必须采用逗号分隔数据元素

B.

必须采用空格来分隔数据元素

C.

必须采用分号分隔数据元素

D.

允许采用特殊字符来分隔数据元素

第 11 题    单选题

int() 函数用于将一个字符串或数字转换为整型。在Python交互式编程环境下执行以下语句,会出现错误的一项是?( )

A.

int()

B.

int(1.0)

C.

int(0x20,16)

D.

int('2023',8)

第 12 题    单选题

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

A.

"0x7e3"

B.

"0x7e6"

C.

"0x7e7"

D.

"0x7e8"

第 13 题    单选题

有如下Python代码:

a=[25,37,49,64,73,75,85,91]
t=i=0
j=len(a)-1
key=int(input())
while i<=j:
    m=(i+j)//2
    if  a[m]==key:
        break
    elif a[m]>key:
        j=m-1
    else:
        i=m+1
    t+=1
 
print(t)

 

若输入的key值是73,则程序输出的结果是?

A.

5

B.

1

C.

2

D.

3

第 14 题    单选题

某算法的流程图如图所示,则该流程图的结构属于?( )

A.

顺序结构

B.

分支结构

C.

树形结构

D.

循环结构

第 15 题    单选题

b=[1,2,3,4,5],sum(b)的值是?( )

A.

10

B.

14

C.

15

D.

12

第 16 题    单选题

s=y\nea\tr”,则len(s)的值为?( )

A.

8

B.

4

C.

6

D.

5

第 17 题    单选题

有关于print()语句的运用,下列输出结果有误的是?( )

A.

print(Happy!)

B.

print(李明)

C.

print'Happy!’)

D.

print(2023)

第 18 题    单选题

若有代码:

name=[“李明”,“王宁”,“朱倩”]

for a,i in enumerate(name):

    print(a,i)

则显示的结果是?

A.

0  李明

 

1  王宁

 

2  朱倩

B.

李明

 

王宁

 

朱倩

C.

李明,王宁,朱倩

D.

李明

 

王宁

 

朱倩

第 19 题    单选题

“鸡兔同笼”是一个古老的数学问题,可以应用枚举法求解,也可以利用二元一次方程进行求解。以下是使用计算机解决“鸡兔同笼”问题的几个步骤:

①编写Python程序,用计算机进行处理。

②设计“鸡兔同笼”求解算法。

③验证算法的功能和性能。

④分析问题,确定解题任务。

使用计算机解决“鸡兔同笼”问题,正确的步骤是?

A.

②④①③

B.

④①②③

C.

④②③①

D.

④②①③

第 20 题    单选题

在交互式编程环境下,输入max([(1,2),(2,3),(3,4),(2,6)])语句,执行的结果是?( )

A.

6

B.

(3, 4)

C.

(2,6)

D.

(3,6)

第 21 题    单选题

在交互式编程环境下,输入float("1")语句,执行的结果是?( )

A.

1

B.

1.0

C.

'1'

D.

传入参数错误,不能执行

第 22 题    单选题

在交互式编程环境下,执行all([0,1,2,3])语句后,返回的值是?( )

A.

True

B.

False

C.

1

D.

4

第 23 题    单选题

Python交互式编程环境下,输入print(list(range(0,5,2)))语句,执行的结果是?( )

A.

存在语法错误,不能执行

B.

[0,1]

C.

[0, 1,2, 3,4,5]

D.

[0, 2, 4]

第 24 题    单选题

下列数据对象中,不能使用len()函数获取数据对象长度的是?( )

A.

2023

B.

[2, 0, 2, 3]

C.

["Go", "China!"]

D.

("Go", "China!")

第 25 题    单选题

try....except...else...finally异常处理机制中,如果发生异常则完全不会被执行的代码块是?( )

A.

try代码块

B.

except代码块

C.

else代码块

D.

finally代码块

判断题
第 26 题    判断题

float()函数可将整数转换为浮点类型数据,但不能将字符串中的数字转换为浮点类型数据。( )

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

当python程序发生异常时,我们可以用tryexcept…语句进行异常处理。但每个try模块只能有一个except语句块。( )

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

name为若干元素的列表对象,fileCSV文件,则file.write(,.join(name)+\n)语句可确保列表中每个写入CSV文件的数据,在表格软件打开时作为一个单元格存在。( )

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

十六进制9E的二进制数是8位。( )

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

enumerate()函数用于将列表、元组或字符串等可遍历的数据对象组合为一个索引序列。( )

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

bool()函数用于将给定参数或表达式转换为布尔类型。语句bool(-1)返回的是False值。( )

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

执行语句wq=[[0]*19]*19可以创建一个19行及19列的二维表。( )

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

任何Python二维数据都可以用二维列表来表示。( )

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

Python语言中,bin()函数可以输出二进制数值,也可以传入参数用来设置输出为十六进制数值。( )

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

在执行语句x=input()的过程中,若键盘输入23并按下回车键,则x的值就被赋值为整数23。( )

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

百钱买百鸡是我国古代数学家张丘建在《算经》一书中提出的数学问题,问题的原文是:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?这个问题用现代文描述起来就是:公鸡5文钱1只,母鸡3文钱1只,小鸡31文钱。如果用100文钱买100只鸡,那么公鸡、母鸡和小鸡各应该买多少只呢?请完成下面程序中空白处的语句,实现对问题的求解,找出所有符合题目要求的买鸡方案,并输出。

#cockhenchicken分别为公鸡、母鸡和小鸡的数量,num为符合题目要求的方案数目。

num=0

for cock in range(1,21):

    for hen in range(1,34):

        for chicken in                :  

            if                 == 100 and cock*5 + hen*3 + chicken/3 ==             :

                num =                

                print(f' {num} 种方案是:公鸡{cock}只,母鸡{hen}只,小鸡{chicken}')

第 37 题    问答题

妙妙学校举行了知识竞赛,有一、二、三3个班分别派出最优秀的5名代表参加此次竞赛。这15名代表的成绩存放于”jscj.csv”文件中,现在妙妙读取了其中的数据,数据内容如图所示: 

 下列代码实现了读取竞赛分数信息,并输出各班平均分的情况,请你补全代码。

import csv 

with open("/data/jscj.csv",encoding="utf-8")as f:

    rows=list(                 (f))

    sum=[0,0,0]

    for row in rows[1:]:

        if int(row[0])==1: 

            sum[0]+=int(row[2])

        elif int(                 )==2:

            sum[1]+=int(row[2])

        else: 

            sum[2]+=int(row[2])

    for i in range(1,4):

            print(str(i)+"班的平均分为:",round(                 /5,2))

第 38 题    问答题

若要生成一个由若干小写字母组成的互不重复的随机数组,已知小写字母的ASCII码值为97~122整数范围,并将其进行从小到大输出,如图所示,请将相关程序补充完整。

import random  #random是随机数模块
n=int(input("请输入元素个数(不超过26):")) 
a=[]
#产生不重复的随机数组
for i in range(n):
 
    x=random.randint(97,122)  #产生97-122之间的随机整数
 
    while chr(x) in a:
 
        x=random.randint(97,122)
 
    a.append(        ①         )
 
print(a)
#将各个元素进行排序输出
 
for i in range(n-1):
 
    k=i
 
    for j in range(        ②         ,n):
 
        if a[k]>a[j]:
 
            k=        ③        
 
    if i!=k:
 
        a[i],a[k]=        ④        
 
print("该随机数组从小到大排列为:",a)
答题卡
选择题
判断题
编程题
36 37 38
题目总数:38
总分数:100
时间:90分钟