当前位置: 首页 > news >正文

2022年12月电子学会Python等级考试试卷(五级)答案解析

青少年软件编程(Python)等级考试试卷(五级)

分数:100  题数:38

一、单选题(共25题,共50分)

1.

下面哪个语句正确定义了元组类型数据tuple1?( )

A. 

tuple1=["张三","李四","王五"]

B. 

tuple1=("张三";"李四";"王五")

C. 

tuple1=(张三,李四,王五)

D. 

tuple1=("张三",)

试题编号:20220427-ph-006

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:元组定义符号为“()”,多个元素之间用英文“,”分割,当只有一个元素时,要加“,”。

2.

已知元组tuple1=("张三","李四","王五","赵六"),能输出('李四', '赵六')的是?( )

A. 

print(tuple1(1:3))

B. 

print(tuple1[1::2])

C. 

print(tuple1[1,3])

D. 

print(tuple1[2:4])

试题编号:20220427-ph-007

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:根据题意可知,输出间隔为2,所以选择B。

3.

以下哪个选项不能生成列表['data1', 'data3', 'data5', 'data7', 'data9'] ?( )

A. 

list1 = []
for i in range(1,10,2):
    list1.append("data{}".format(i))
print(list1)

B. 

list2 = [ "data{}".format(i)for i in range(1,10,2)]
print(list2)

C. 

list3= []
for i in range(10):
    if i %2 == 1:
        list3.append("data{}".format(i))
print(list3)

D. 

list4 = [ "data{}".format(i) for i in range(0,10) if i % 2 == 0]
print(list4)

试题编号:20220427-ph-027

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:list4 = [ "data{}".format(i) for i in range(0,10) if i % 2 == 1]

或者list4 = [ "data{}".format(i) for i in range(1,10) if i % 2 == 1]

4.

关于各类推导式的运用的表述中,错误的是?( )

A. 

yield作为Python的关键字之一,在生成器函数中用来返回值。

B. 

使用生成器对象的元素时,不可以将其根据需要转化为列表或者元组。

C. 

与列表推导式不同的是,生成器推导式的结果是一个生成器对象,而不是列表,也不是元组。

D. 

从形式上看,生成器推导式与列表推导式非常接近,

只是生成器推导式使用圆括号而不是列表推导式所使用的方括号。

试题编号:20220427-ph-028

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:使用生成器对象的元素时,可以根据需要将其根据需要转化为列表或者元组。

5.

Python中yield是一个类似return 的关键字,迭代一次遇到yield时就返回yield后面(右边)的值。

下一次迭代时,从上一次迭代遇到的yield后面的代码(下一行)开始执行。下列程序的输出结果是?( )

def fun():
    a,b = 1,1
    while True:
        yield a
        a,b = b,a+b
c = fun()
for i in range(6):
    print(c.__next__(),end = ' ')

A. 

1 1 2 3 5 8

B. 

1 1 2 2 3 3

C. 

8 5 3 2 1 1

D. 

1 2 3 4 5 6

试题编号:20220427-ph-029

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:运用序列解包,该程序的功能是输出斐波那契数列前6项。

6.

下列列表的定义,正确的是哪一项?( )

A. 

list1 = ['red'; 'blue'; 'yellow']

B. 

list2 = [red, blue, yellow]

C. 

list3 = ['red', 'blue', 'yellow']

D. 

list4 = ['red'、 'blue'、'yellow']

试题编号:20220506-qdc-001

试题类型:单选题

标准答案:C

试题难度:容易

试题解析:列表的定义规则

7.

现有列表 fruits = ['apple', 'orange', 'banana', 'peach'] 
当前需要删去列表元素'orange',正确的操作是?( )

A. 

del fruits['orange']

B. 

del fruits[1]

C. 

del fruits[2]

D. 

del fruits[orange]

试题编号:20220506-qdc-002

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:列表元素的删除

8.

水果店管理员现有列表 fruits = ['apple', 'orange', 'banana', 'peach'] ,当前接收到葡萄('grape'),

需要在列表末尾添加该元素,正确的是哪一项?( )

A. 

fruits.insert('grape')

B. 

fruits.append('grape')

C. 

fruits.index('grape')

D. 

fruits.count('grape')

试题编号:20220506-qdc-003

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:列表的插入方法

9.

现有校园气象站最近一周(周一至周日)信息采集数据列表:
sunlight = [425, 293, 381, 197, 408, 355, 362]
当前需要输出周一至周六的数据信息,正确的操作是?( )

A. 

print(sunlight[1:n])

B. 

print(sunlight[1:n-1])

C. 

print(sunlight[::-1])

D. 

print(sunlight[:-1])

试题编号:20220506-qdc-004

试题类型:单选题

标准答案:D

试题难度:较难

试题解析:列表的切片操作

10.

现有集合 stationery = set(("pen", "pencil", "eraser", "ruler"))
需要集合中添加元素"ink",正确的是哪一项?( )

A. 

stationery.set("ink")

B. 

stationery.insert("ink")

C. 

stationery.pop("ink")

D. 

stationery.add("ink")

试题编号:20220506-qdc-017

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:集合添加元素的操作

11.

通过下列哪个方法,可以实现两个集合交集的操作?( )

A. 

copy()

B. 

intersection()

C. 

union()

D. 

update()

试题编号:20220506-qdc-018

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:集合的基本应用

12.

运行下列程序,输出结果正确的一项是?( )
ds = {'aa':2,'bb':4,'cc':9,'dd':6}
print(ds.popitem(), len(ds))

A. 

('aa', 2) 4

B. 

('dd', 6) 4

C. 

('bb', 2) 3

D. 

('dd', 6) 3

试题编号:20220507-zpf-020

试题类型:单选题

标准答案:D

试题难度:较难

试题解析:Python 字典 popitem() 方法表示,从字典中删除最后一个项目。

13.

运行下列程序,输出结果正确的一项是?( )
ds = {'语文':99,'数学':98,'历史':94,'物理':97}
print(ds.pop(max(ds.keys()), 0))

A. 

数学

B. 

94

C. 

99

D. 

语文

试题编号:20220507-zpf-021

试题类型:单选题

标准答案:C

试题难度:较难

试题解析:本题主要考察字典中多个函数的组合应用。

14.

有如下Python程序段:

n=int(input("请输入一个整数:"))

s=0

for i in range(1,n):

    if n%i==0:

        s=s+i

print(s)

若输入的数为10,则输出的结果为?( )

A. 

8

B. 

11

C. 

18

D. 

55

试题编号:20220510-jxf-015

试题类型:单选题

标准答案:A

试题难度:容易

试题解析:本题变量s的值为整数n除n外的因子之和。

15.

有如下Python程序段:

for i in range(1,11):

    for j in range(1,11,2):

        if i+j!=10:

            break

        print(i,j)

执行程序后,输出的结果为?( )

A. 

3 7

B. 

5 5

C. 

7 3

D. 

9 1

试题编号:20220510-jxf-016

试题类型:单选题

标准答案:D

试题难度:较难

试题解析:本题程序在用双重循环遍历i、j的过程中,判断如果i+j不等于10,

则结束内循环,只有当i=9、j=1时输出。

16.

有如下Python程序段:

s=['3','5','11','28']

max=s[0]

for i in range(1,len(s)):

   if s[i]>max:

       max=s[i]

print(max)

执行程序后,输出的结果为?( )

A. 

3

B. 

5

C. 

11

D. 

28

试题编号:20220510-jxf-017

试题类型:单选题

标准答案:B

试题难度:较难

试题解析:本题程序功能比较列表中字符串的大小,输出最大值。

17.

有如下Python程序段:

s=0

for i in range(1,11):

    if i%3==2:

        continue

    s+=i

执行程序后,输出s的值为?( )

A. 

15

B. 

26

C. 

40

D. 

55

试题编号:20220510-jxf-018

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:本题变量s的值为序列1到10中对3取余不等于2的数之和。

18.

Python表达式"Hello"+"Python"的值为?( )

A. 

"Hello"+"Python"

B. 

"HelloPython"

C. 

Hello+Python

D. 

"Hello Python"

试题编号:20220510-lly-007

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:字符串连接操作。

19.

有字符串s="Hello Python",则s[-2:2:-2]的值为?( )

A. 

""

B. 

"otPo"

C. 

"otPol"

D. 

"hy l"

试题编号:20220510-lly-008

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:字符串的切片操作。

20.

回文指正读和反读都相同的字符序列,如“abba”、“abccba”、12321、123321是“回文”,“abcde”和“ababab”则不是“回文”。 在数学中具备这样特征的数就叫做回文数。假设字符变量a中存放的是一个三位数,下列语句不能取出字符变量a中的回文数的是?( )

A. 

a[2]+a[1]+a[0]

B. 

a[::-1]

C. 

a[-1]+a[-2]+a[-3]

D. 

a[-1:0:-1]

试题编号:20220510-lly-009

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:字符串的索引、切片操作的运用。

21.

已知变量name="张昊"、age=18,下列字符串格式化输出,错误的是?( )

A. 

print('我叫%s,今年我%d岁了'%(age,name))

B. 

print(‘我叫%s,今年我%d岁了'%(name,age)

C. 

print('我叫{},今年我{}岁了'.format(name,age))

D. 

print(f'我叫{name},今年我{age}岁了')

试题编号:20220510-lly-010

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:字符串格式化输出操作。

22.

编写Python程序实现:随机生成输出一个1-100之间的整数。

import random

                       

print(num)

下列语句不可以完善程序,实现相关功能的是?( )

A. 

num=int(random.random()*99)+1

B. 

num=int(random.uniform(1,100))

C. 

num=random.randint(1,100)

D. 

num=random.choice(range(1,101))

试题编号:20220510-lly-022

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:random.randint()函数的功能。

23.

 编写Python程序实现:输入圆的半径,输出圆的面积。

import math

r=float(input())

                        

print(s)

下列语句不可以完善程序,实现相关功能的是?( )

A. 

s=math.pi*math.pow(r,2)

B. 

s=math.pi*r**2

C. 

s=math.pi*r*r

D. 

s=pi*r*r

试题编号:20220510-lly-023

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:math模块的运用。

24.

time模块中,time.time()所得的结果的数据类型是?( )

A. 

整形

B. 

实型

C. 

字符串类型

D. 

列表类型

试题编号:20220510-lly-024

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:time模块的功能与特点。

25.

Python中jieba的功能描述,正确的是?( )

A. 

分词

B. 

数据可视化

C. 

计算

D. 

画图

试题编号:20220510-lly-025

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:jieba模块的功能。

二、判断题(共10题,共20分)

26.

一个完整的切片表达式包含两个“:”,用于分隔三个参数(start_index、end_index、step),

当只有一个“:”时,默认第三个参数step=0。( )

正确 

错误 

试题编号:20220427-ph-030

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:当只有一个“:”时,默认第三个参数step=1

27.

Python中列表的索引是从1开始的。( )

正确 

错误 

试题编号:20220506-qdc-026

试题类型:判断题

标准答案:错误

试题难度:容易

试题解析:列表的概念知识

28.

Python中集合元素是有序的,可以用索引获取集合的具体元素。( )

正确 

错误 

试题编号:20220506-qdc-032

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:集合类型的基本应用

29.

Python集合中每一个元素都是唯一的。( )

正确 

错误 

试题编号:20220506-qdc-033

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:集合类型的特点

30.

当以指定“键”为下标给字典对象赋值时,若该“键”存在则表示修改该“键”对应的“值”,若不存在则抛出错误。( )

正确 

错误 

试题编号:20220507-zpf-022

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:若不存在则表示为字典对象添加一个新的“键-值对”。

31.

>>> list(range(4))可以生成列表[0,1,2,3,4]。( )

正确 

错误 

试题编号:20220510-jxf-019

试题类型:判断题

标准答案:错误

试题难度:容易

试题解析:range(4)产生的值为0,1,2,3,没有4

32.

在Python中,字符串常量必须用双引号引起来。( )

正确 

错误 

试题编号:20220510-lly-028

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:字符串的表达规范。

33.

假设字符串a=”students”,索引切片a[:]的结果与a[:1]的结果相同。( )

正确 

错误 

试题编号:20220510-lly-029

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:字符串切片操作。

34.

time库是Python中处理时间的标准库, time库中时间获取函数time()和ctime(),返回的都是字符串。( )

正确 

错误 

试题编号:20220510-lly-035

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:time模块的功能与特点。

35.

元组是一种有序的序列结构,元素可重复,数据类型可不相同,元素可以修改。( )

正确 

错误 

试题编号:20220427-ph-008

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:元组的元素是不能修改的。

三、编程题(共3题,共30分)

36.

破译密码:经过研究,该密码的加密规律如下:

1)原文中所有的字符都在字母表中被循环左移了三个位置(dec  -> abz);

2)逆序存储(abcd -> dcba );

3)大小写反转(abXY -> ABxy)。

输入:一个加密的字符串。(长度小于50且只包含大小写字母)
输出:输出解密后的字符串。
根据上述算法思想,补全下列代码。
输入输出示例:输入:djiAHYhSju,输出:XMvKbkdLMG
a=input()
a=list(a)
newList1=[]
newList2=[]
for i in a:
    num=ord(i)
    if num >=120 and num<=122:
        num=                      
    elif num>=88 and num<=90:
        num=num-23
    else:
        num =           ②           
    c=chr(num)
    newList1.append(c)
           ③           
for i in newList1:
    if i.isupper():
        newList2.append(                      )
    if i.islower():
        newList2.append(i.upper())
for i in newList2:
    print(i,end='')

试题编号:202212-P5-36

试题类型:编程题

标准答案:

参考程序:

a=input()
a=list(a)
newList1=[]
newList2=[]
for i in a:
    num=ord(i)
    if num >=120 and num<=122:
        num=num-23
    elif num>=88 and num<=90:
        num=num-23
    else:
        num = num + 3
    c=chr(num)
    newList1.append(c)
newList1.reverse()
for i in newList1:
    if i.isupper():
        newList2.append(i.lower())
    if i.islower():
        newList2.append(i.upper())
for i in newList2:
    print(i,end='')

试题难度:一般

试题解析:

评分标准:

(1)num-23 或等效答案; (2分)
(2)num + 3 或等效答案; (2分)
(3)newList1.reverse() 或等效答案;  (3分)
(4)i.lower() 或等效答案。(3分)

37.

科技社团组织一次实践活动,设计海报过程中需要对一个字符串进行编辑,字符串由大小写英文字母和英文标点符号组成,根据活动主题,需要将字符串中小写字母’h’替换为大写字母’H’。有一点要注意:第一个和最后一个’h’不用替换。

输入格式:
   共1行,1个字符串,长度不超过100,由大小写英文字母和英文标点符号组成。
输出格式:
   共1行,1个字符串,表示经过编辑后的字符串。
输入样例:
   hill how high hello how hide
输出样例:
    hill How HigH Hello How hide

s=input()
x=s.            ①           ('h')
y=s.rfind('h')
t=s[                      :y]
t=t.           ③           ('h','H')
print(s[0:x+1]+t+s[y:           ④           ])

试题编号:202212-P5-37

试题类型:编程题

标准答案:

参考程序:

s=input()
x=s.find('h')
y=s.rfind('h')
t=s[x+1:y]
t=t.replace('h','H')
print(s[0:x+1]+t+s[y:len(s)])

试题难度:一般

试题解析:

评分标准:

(1)find  或等效答案;(3分)
(2)x+1  或等效答案;(2分)
(3)replace 或等效答案;(2分)
(4)len(s) 或等效答案。(3分)

38.

小石喜欢带有字符“2”、“6”、“8”的车牌号,不喜欢带有数字“4”的车牌号,因此小石设计了一个计算车牌满意值的程序。对于车牌号中的所有字符,字符“2”满意值为 1,字符“6” 满意值为 2,字符“8”满意值为 3,字符“4”的满意值为-2,其他字符的满意值为 0,车牌号的满意值即为其所有字符的满意值之和,例如车牌号“浙 H94286”的满意值为 4,计算某车牌号 满意值的程序代码如下,请补充完整。

dic={"2":1,"4":-2,"6":2,"8":3}

cp=input("请输入车牌号:")

ans=0    

for i in range(                      ) :

    ch=cp[i]

    if                      :   

                   ③            

print("该车牌号的满意值为:",ans)

试题编号:202212-P5-38

试题类型:编程题

标准答案:

参考程序:

dic={"2":1,"4":-2,"6":2,"8":3}

cp=input("请输入车牌号:")

ans=0    

for i in range( len(cp) ) :

    ch=cp[i]

    if ch in dic :   

       ans+= dic[ch]      

print("该车牌号的吉利值为:",ans)

试题难度:一般

试题解析:

评分标准:

(1)len(cp) ;(3分)

(2)ch in dic;(3分)
(3)ans+= dic[ch]。(4分)

http://www.lryc.cn/news/3225.html

相关文章:

  • 计算机网络自定向下 -- 浅谈可靠性之rdt协议
  • 制造业升级转型:制造业上市公司-智能制造词频统计数据集
  • HTML 开发工具整理
  • 介绍ACE C++网络通信框架
  • 【Mac OS】JDK 多版本切换配置
  • RabbitMQ-Exchanges交换机
  • 离散数学 课时二 命题逻辑等值演算
  • Debezium系列之:事件扁平化转换SMT,简化debezium数据格式,为数据添加head,为值添加键值对
  • 内网渗透(十八)之Windows协议认证和密码抓取-本地认证(NTML哈希和LM哈希)
  • Portraiture全新4.0最新版人像磨皮插件更新内容
  • 前端也能悄悄对视频截图?js实现对视频按帧缓存
  • TCP、UDP网络编程面试题
  • 用网络调试助手测试PLC-Reocrder收听模式的过程
  • 牛客小白月赛66
  • 加载sklearn新闻数据集出错 fetch_20newsgroups() HTTPError: HTTP Error 403: Forbidden解决方案
  • 图解LeetCode——剑指 Offer 53 - I. 在排序数组中查找数字 I
  • python 实现热门音乐分析 附代码+数据 +论文
  • 【2335. 装满杯子需要的最短总时长】
  • 再不跳槽,就晚了
  • Java 内存结构解密
  • ROS小车研究笔记2/11/2023:使用ssh远程登录小车
  • koa ts kick off 搭建项目的基本架子
  • h2database源码解析-查询优化器原理
  • 2月11日,30秒知全网,精选7个热点
  • vue组件的构成 <template> <script> <style>节点的使用 <
  • windows + vscode + rust
  • 二十九、异常处理
  • RTOS之二环境搭建初识RTOS
  • 【Java】 JAVA Notes
  • Java笔记-volatile和AtomicInteger