2021年12月电子学会青少年软件编程 中小学生Python编程等级考试三级真题解析(选择题)

news2024/12/22 18:35:28

2021年12月Python编程等级考试三级真题解析

选择题(共25题,每题2分,共50分)

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

A、65

B、66

C、256

D、257

答案:D

考点分析:考查进制转换相关知识,一位十六进制对应四位二进制,从右往左,不够补零,对应的二进制就是:100000001,得到的十进制就是257;也可以直接用位置上的数乘以16的n-1次方(从右往左第一个是0、依次加1),得到的就是:1*16^2+0*16^1+1*16^0=256+0+1=257;答案D

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","")

答案:D

考点分析:考查综合能力,划线语句实现的功能是去掉换行符,然后每行都拼接在一起,所以等同的语句为D选项

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

A、abs(-4)

B、round(abs(-3.5))

C、abs(round(-3.5))

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

答案:D

考点分析:考查abs函数和round函数的使用,abs是返回绝对值,round是四舍五入;D选项round(-3.5)对-3.5进行四舍五入,结果为-3,而round(3.8)对3.8进行四舍五入,结果为4,再取-3和4中的最小值,结果为-3,答案D

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

A、3

B、111

C、“3”

D、“111”

答案:D

考点分析:考查max函数的使用,因为在这个表达式中,key参数指定的是一个函数,用来指定比较元素的依据。在这里,key=str表示比较元素时将其转换为字符串再进行比较。所以,比较的结果是"111"、"22"、"3",最大的元素是"3",答案D

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])

答案:B

考点分析:考查元组相关知识,A选项省略了小括号,C选项本身就是元组,D选项是将列表转换为元组;B选项是字典,元素就2个,所以没办法转为元组,答案B

本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102

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')

答案:B

考点分析:考查文件相关操作,w是打开并写入操作,w-没有这个参数,答案B

7、关于十进制数,下列说法错误的是

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

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

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

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

答案:A

考点分析:考查十进制数相关知识,小数点向左数第二位的权值是10的1次幂,答案A

8、关于Python的序列描述,不正确的是

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

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

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

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

答案:C

考点分析:考查序列相关知识,索引从左往右都是正数,从右往左就是负数,答案C

9、关于元组,描述不正确的是

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

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

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

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

答案:C

考点分析:考查元组相关知识,元组里面如果只有一个元素,也需要在后面加上逗号,答案C

10、以下程序的输出结果是

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

A、z

B、2.0

C、error

D、没有输出

答案:C

考点分析:考查综合知识,y的值是0,程序里面y作为除数,所以会引发异常,0不能作为除数,所以答案C

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

A、冒泡排序

B、选择排序

C、插入排序

D、快速排序

答案:D

考点分析:考查排序算法相关知识,快速排序采用分治的思想,将原序列分成两个子序列,再对子序列进行排序,直到子序列长度为1或0。快速排序的平均时间复杂度为O(nlogn),而冒泡排序、选择排序和插入排序的平均时间复杂度分别为O(n^2),O(n^2)和O(n^2)。所以快速排序是效率最高的排序算法;答案D

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

A、bool(2*3-0)

B、bool(2*3-2)

C、bool(2*3-3)

D、bool(2*3-6)

答案:D

考点分析:考查bool函数,bool函数和整数类型转换,非0为真True,0为假False;答案D

13、下列函数能创建一个新的元组的是

A、tuple()

B、list()

C、dict()

D、set()

答案:A

考点分析:考查元组相关知识,tuple是元组,list是列表,dict是字典,set是集合;答案A

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

A、1

B、'1'

C、'''1'''

D、'''\u4e2d\u6587"'

答案:A

考点分析:考查ascii函数,ascii()函数返回一个用于表示对象的字符串。如果参数是一个整数,则返回对应的ASCII字符。因此,ascii(1)的结果是'1'。因为ASCII码中,数字1对应的字符就是'1';答案A

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='+','=?')

答案:C

考点分析:考查print输出函数,AD选项会报错,B选项输出的是6=?,答案C

 本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102

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))

答案:A

考点分析:考查相关函数的使用,print(min(float(a),7,6))是语法正确的。这是因为float()函数可以将字符串转换为浮点数,而min()函数可以接受多个参数并返回其中最小的一个。所以代码中的float(a)将字符串'12345'转换为浮点数,并且返回值为7和6中最小的一个,然后通过print()函数将结果打印出来;chr、bin和hex接受的参数都应该是整数,答案A

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'))

答案:B

考点分析:考查sum函数,因为sum函数的第一个参数必须是可迭代对象,而B选项的第一个参数是一个列表,而第二个参数是另一个列表,不符合sum函数的要求。其他选项都符合sum函数的参数要求,可以正常执行,答案B

18、关于列表和元组的关系,下列描述不正确的是

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

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

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

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

答案:D

考点分析:考查元组和列表相关知识,元组和列表虽然可以相互转换,但是元组是不可变的,而列表是可变的。这意味着一旦创建了一个元组,就不能修改它的值,而列表可以随意修改;所以还是有本质区别,答案D

19、当发生异常时,下列描述不正确的是

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

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

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

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

答案:D

考点分析:考查异常处理,每一个try模块可以设置一个或者多个except模块,答案D

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

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

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

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

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

答案:B

考点分析:考查int函数,int函数带两个参数的,第二个参数是对应的进制,第一个参数是该进制对应的值,int是将对象转换成十进制整数;答案B

21、以下描述中,错误的选项是

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

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

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

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

答案:C

考点分析:考查进制相关知识,0o是八进制,0b是二进制,0x是十六进制,答案C

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

A、追加读

B、追加写

C、可读可写

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

答案:D

考点分析:考查文件写入方式,w和w+都可以用于创建新文件或覆盖已存在的文件;不同的在于w模式:只能进行写操作,不能进行读操作。如果文件不存在,会自动创建一个新文件;如果文件已存在,会清空文件内容并重新写入。w+模式:既可以进行写操作,也可以进行读操作。如果文件不存在,会自动创建一个新文件;如果文件已存在,会清空文件内容并重新写入。支持读取文件内容,可以使用seek()函数将文件指针移动到任意位置。答案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,

答案:B

考点分析:考查for循环,自变量i的下标是从0开始,不包括range里面的数字,排除CD,而输出语句里面是每输出一个i的值,都会在后面加上一个逗号;所以答案B

24、有如下列表|=[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]

答案:B

考点分析:考查冒泡排序,冒泡排序是一种简单的排序算法。它重复地遍历要排序的列表,一次比较两个元素,并按照升序或降序交换它们。重复这个过程,直到整个列表排序完成。

第一趟排序:2,7,6,4,5,9

第二趟排序:2,6,4,5,7,9

第三趟排序:2,4,5,6,7,9

25、有如下列表|=[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]

答案:D

考点分析:考查选择排序,选择排序是从未排序的部分中找到最小的元素。 将找到的最小元素与未排序部分的第一个元素交换位置,将其放到已排序的部分的末尾。 在剩余的未排序部分中,继续重复步骤1和步骤2,直到所有元素都已排序。

第一趟排序:1,6,3,8,4,7

第二趟排序:1,3,6,8,4,7

第三趟排序:1,3,4,8,6,7

推荐资料

  • 所有考级比赛学习相关资料合集【推荐收藏】

1、蓝桥杯比赛

  • 蓝桥杯python选拔赛真题详解

  • 蓝桥杯python省赛真题详解

  • 蓝桥杯python国赛真题详解

  • 历届蓝桥杯科技素养计算思维真题解析

2、考级资料

  • python等级一级真题解析【电子学会】

  • python等级二级真题解析【电子学会】

  • python等级三级真题解析【电子学会】

  • python等级四级真题解析【电子学会】

3、其它资料

  • 初学python100例

  • 历届蓝桥杯scratch国赛真题解析
  • 历届蓝桥杯scratch省赛真题解析
  • 历届蓝桥杯scratch STEMA选拔赛真题解析
  • 历届蓝桥杯科技素养计算思维真题解析
  • 画图-scratch编程考级99图
  • 电子学会历年scratch等级考试一级真题解析
  • 电子学会历年scratch等级考试二级真题解析
  • 电子学会历年scratch等级考试三级真题解析
  • 电子学会历年scratch等级考试四级真题解析
  • 零基础学习scratch3.0【入门教学 免费】
  • 零基础学习scratch3.0【视频教程 114节 免费】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1870592.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法08 广/宽度优先搜索及相关问题详解

这是《C算法宝典》算法篇的第08节文章啦~ 如果你之前没有太多C基础,请点击👉专栏:C语法入门,如果你C语法基础已经炉火纯青,则可以进阶算法👉专栏:算法知识和数据结构👉专栏&#xff…

【LeetCode】八、堆的使用:第K个最大元素 + 前K和高频单词

文章目录 1、Java中的堆结构2、leetcode215:数组中的第K个最大元素3、leetcode692:前K个高频单词 1、Java中的堆结构 PriorityQueue类取堆顶元素删除堆顶元素堆的元素个数遍历堆 2、leetcode215:数组中的第K个最大元素 这题应该快排来解&…

2024年6月27日 (周四) 叶子游戏新闻

老板键工具来唤去: 它可以为常用程序自定义快捷键,实现一键唤起、一键隐藏的 Windows 工具,并且支持窗口动态绑定快捷键(无需设置自动实现)。 喜马拉雅下载工具: 字面意思 Steam国产“类8番”游戏《永恒逃脱:暗影城堡》…

Elasticsearch8.x聚合查询全面指南:从理论到实战

聚合查询的概念 聚合查询(Aggregation Queries)是Elasticsearch中用于数据汇总和分析的查询类型。它不同于普通的查询,而是用于执行各种聚合操作,如计数、求和、平均值、最小值、最大值、分组等。 聚合查询的分类 分桶聚合&…

web端使用HTML5开发《贪吃蛇》小游戏教程【附源码】

自制游戏列表 1植物大战僵尸自制HTML5游戏《植物大战僵尸》2开心消消乐自制HTML5游戏《开心消消乐》3贪吃蛇自制HTML5游戏《贪吃蛇》4捕鱼达人自制HTML5游戏《捕鱼达人》 一、游戏简介 贪吃蛇是一款经典的电子游戏,最早在1976年由Gremlin公司推出,…

牛筋面,一口难忘的劲道滋味

在众多的平凉美食中,牛筋面以其独特的口感和丰富的口味,赢得了无数食客的喜爱。牛筋面,这一名字就给人一种坚韧、有嚼劲的印象。它并非由牛筋制成,而是因其面条的口感如牛筋般劲道而得名。牛筋面的制作过程颇具巧思。选用优质的面…

Unity免费领高级可视化编程自定义节点工具AI行为UI流程对话树状态机逻辑等FlowReactor价值50刀high level20240627

刚发现一款类似虚幻蓝图的可视化编程工具,原价50刀,现在免费领取了。赶紧去领取入库,防止作者涨价。 高级可视化编程自定义节点工具:https://prf.hn/l/BJbdvnD 作者其他资产:https://prf.hn/l/YLAYznV Unity免费领高级…

电脑提示msvcr120.dll丢失怎样修复

文件功能与重要性:msvcr120.dll 文件的功能和重要性体现在多个方面,以下是对其核心功能的详细分析: 运行时支持 msvcr120.dll 提供了运行时环境,使得使用 Microsoft Visual C 2013 编译的程序能够调用必要的运行时函数。这些函数…

MySQL高级-索引-使用规则-覆盖索引回表查询

文章目录 1、覆盖索引1.1、查看索引1.2、删除单列索引 idx_user_pro1.3、查询 profession软件工程 and age31 and status01.4、执行计划 profession软件工程 and age31 and status01.5、执行计划 select id,profession,age,status1.6、执行计划 select id,profession,age,statu…

step7:“模拟量界面”逻辑

文章目录 文章介绍效果图AnalogPage.qml结构图调用 SerialPortHandler.sendData(message); serialporthandler.cpp 文章介绍 之前的6步实现了案例MF的界面设计和串口界面的逻辑设计,本文将实现模拟量界面的逻辑设计 新增功能: 1)弹出提示框 …

Mac14.1.2 M1芯片免费读写ntfs硬盘-亲测有效,免费!!!

1. 安装homebrew 打开终端,使用以下命令 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 根据提示逐步完成即可,镜像选择我这里都是保持1的选项。 2. 重启终端 安装完成homebrew后,需…

Java线程池及面试题

1.线程池介绍 顾名思义,线程池就是管理一系列线程的资源池,其提供了一种限制和管理线程资源的方式。每个线程池还维护一些基本统计信息,例如已完成任务的数量。 总结一下使用线程池的好处: 降低资源消耗。通过重复利用已创建的…

第 1 章SwiftUI 简介

在 2019 年的 WWDC 上,Apple 宣布推出一款名为 SwiftUI 的全新框架,令开发者们大吃一惊。该框架不仅改变了开发 iOS 应用的方式,还代表了自 Swift 首次亮相以来 Apple 开发者生态系统最重大的转变。SwiftUI 适用于所有 Apple 平台,包括 iPadOS、macOS、tvOS 和 watchOS,这…

ZSWatch 开源项目介绍

前言 因为时不时逛 GitHub 会发现一些比较不错的开源项目,突发奇想想做一个专题,专门记录开源项目,内容不限于组件、框架以及 DIY 作品,希望能坚持下去,与此同时,也会选取其中的开源项目做专题分析。希望这…

【GD32】08 - IIC(以SHT20为例)

GD32中的IIC 今天来了解一下GD32中的硬件IIC,其实我个人是觉得软件IIC比较方便的,不过之前文章里用的都是软件IIC,今天就算是走出自己的舒适圈,我们来了解了解GD32中的硬件IIC。 我这里用的型号是GD32F407,不同型号的…

多路h265监控录放开发-(14)通过PaintCell自定义日历控件继承QCalendarWidget的XCalendar类

首先创建一个新类XCalendar继承QCalendarWidget类&#xff0c;然后在UI视图设计器中把日历提升为XCalendar&#xff0c;通过这个函数自己设置日历的样式 xcalendar.h #pragma once #include <QCalendarWidget> class XCalendar :public QCalendarWidget { public:XCal…

Java基础(四)——字符串、StringBuffer、StringBuilder、StringJoiner

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 ⚡开源项目&#xff1a; rich-vue3 &#xff08;基于 Vue3 TS Pinia Element Plus Spring全家桶 MySQL&#xff09; &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1…

C++编程(四)this指针 常函数 常对象 静态成员

文章目录 一、this指针&#xff08;一&#xff09;概念&#xff08;二&#xff09;显式使用this指针的场景1. 当形参和成员变量名一致时2. 返回对象自身的时候必须要使用this指针3. 在类中销毁一个对象 二、常函数和常对象&#xff08;一&#xff09;常函数1. 概念2. 语法格式 …

Linux Static calls机制

文章目录 前言一、简介二、Background: indirect calls, Spectre, and retpolines2.1 Indirect calls2.2 Spectre (v2)2.3 RetpolinesConsequences 2.4 Static callsHow it works 三、其他参考资料 前言 Linux内核5.10内核版本引入新特性&#xff1a;Static calls。 Static c…

关于摄像头模组中滤光片的介绍

1、问题背景 红外截止滤光片&#xff08;IR CUT Filter&#xff09;是应用在摄像头模组中非常重要的一个器件&#xff0c;因人眼与 coms sensor 对光线各波长的响应不同&#xff0c; 人眼看不到红外光&#xff0c;但 sensor 能感应到&#xff08;如下图是某sensor在各波长下的…