当前位置:首页>python>2026年全国信息素养大赛|数字守艺人Python模拟卷(一) |4-6年级小高组-附答案及详细解析

2026年全国信息素养大赛|数字守艺人Python模拟卷(一) |4-6年级小高组-附答案及详细解析

  • 2026-10-11 08:08:39
2026年全国信息素养大赛|数字守艺人Python模拟卷(一) |4-6年级小高组-附答案及详细解析

竞/赛/真/题

  知识如海,学无止境  

本系列文章专门针对准备参加比赛的学子们

提供每日一题的习题并会进行详细讲解,

如果需要往年完整卷子以及答案请点击下面链接🔗👇

最新出炉!|全国信息素养大赛|2025年图形化编程复赛真题答案及解析

最新出炉!|全国信息素养大赛|2025年图形化编程小高组复赛真题答案及解析

最新出炉!|全国信息素养大赛|2025年 Python复赛真题答案及解析

【真题解析】全国信息素养大赛|2025年7月图形化编程复赛|编程题真题详解(01)

【真题解析】全国信息素养大赛|2025年7月图形化编程复赛|编程题真题详解(02)

【真题解析】全国信息素养大赛|2025年7月图形化编程复赛|编程题真题详解(03)

❤️  关注我们获取更多内容,更新不迷路 ❤️


2026 年 全国青少年信息素养大赛

算法应用-数字守艺人模拟卷一

Python(小高组)

【说明】

由于本次大赛赛制改版,题目融入了非遗文化的元素,

练习时没有对应的非遗素材,在考核的范围内以熟练掌握知识点并能灵活运用即可

一、单选:

01:定义非遗苏绣针法字典embroidery = {"平针":5, "打籽针":8, "盘金针":12},执行print(embroidery["盘金针"])的结果是(    )

A.  5

B.  8

C.  12

D.  报错

解析:

本题考察Python中字典的使用。

字典由键-值对组成,可以通过键来访问对应的值。字典使用花括号{}定义,键和值之间用冒号:分隔。

字典embroidery = {"平针":5, "打籽针":8, "盘金针":12},

键"平针"对应值5,

键"打籽针"对应值8,

键"盘金针"对应值12。

执行print(embroidery["盘金针"]),即通过键"盘金针"访问其对应的值,结果为12。因此,选项C符合题意。

分析其他选项:

A. 5:这是键"平针"对应的值,而不是"盘金针"对应的值。

B. 8:这是键"打籽针"对应的值,而不是"盘金针"对应的值。

C. 12:正确,是键"盘金针"对应的值。

D. 报错:当键不存在于字典中时,会引发KeyError错误。但这里键"盘金针"存在于字典中,因此不会报错。

正确答案:C 12


02:非遗木雕工坊每日产量列表output = [78,85,92,88,90],执行sorted(output, reverse=True)后,第一个元素是(    )

A.  78

B.  92

C.  90

D.  85

解析: 

本题考察Python中sorted()函数的使用。

sorted()函数用于对可迭代对象(如列表)进行排序,返回一个新的列表。参数reverse=True表示降序排序(从大到小),默认reverse=False为升序排序(从小到大)。

题目中列表output = [78,85,92,88,90],执行sorted(output, reverse=True)会进行降序排序,得到新列表[92, 90, 88, 85, 78],第一个元素(索引0)是92。因此,选项B符合题意。

分析其他选项:

A. 78:错误,78是原列表的第一个元素,但降序排序后是最后一个元素。

B. 92:正确,降序排序后是最大的元素,排在第一个。

C. 90:错误,90是排序后的第二个元素,不是第一个。

D. 85:错误,85是排序后的第四个元素,不是第一个。

正确答案:B 92


03: 定义非遗糖画制作工具元组tools = ("铜勺", "石板", "糖稀", "剪刀"),下列操作正确的是(    )

A.  tools[2] = "麦芽糖"

B.  print(len(tools))

C.  tools.append("竹签")

D.  tools.remove("剪刀")

解析:

本题考察Python中元组的基本操作。

元组是一种不可变的有序序列,一旦创建,其元素不能被修改、添加或删除。但可以访问元组元素,获取元组长度等。

元组tools = ("铜勺", "石板", "糖稀", "剪刀"),元组长度为4,元素索引从0开始。

分析选项:

A. tools[2] = "麦芽糖":错误,

元组是不可变的,不允许通过索引赋值来修改元素,此操作会引发TypeError。

B. print(len(tools)):正确,

len()函数可以用于元组,返回元组中元素的数量,此处输出结果为4。

C. tools.append("竹签"):错误,

元组没有append()方法,因为元组不可变,不能添加新元素,此操作会引发AttributeError。

D. tools.remove("剪刀"):错误,

元组没有remove()方法,因为元组不可变,不能删除元素,此操作会引发AttributeError。

正确答案:B.  print(len(tools))


04: 执行语句for i in range(3, 9, 2): print(i),不会输出的数字是(    )

A.  3

B.  5

C.  7

D.  9

解析:

本题考察Python中range()函数的使用。

range(start, stop, step)生成一个从start开始、到stop结束(不包括stop)、步长为step的整数序列。

题目中执行range(3,9,2)生成的序列是3,5,7

(从3开始,步长2,依次递增,直到大于等于9停止,不包含9),

因此循环会依次输出3、5、7。9不在序列中,所以不会输出。

正确答案:D 9


05: 非遗扎染工坊二维数据dye = [[200,5],[300,8],[250,6]],表示(染料用量,制作件数),dye[2][1]的值是(    )

A.  250

B.  8

C.  6

D.  300

解析:

本题考察Python中二维列表索引的使用。

二维列表是列表的列表,通过两层索引访问元素,第一层索引指定子列表,第二层索引指定子列表中的元素,索引从0开始。

题目中定义二维列表dye = [[200,5],[300,8],[250,6]],

dye[0]为[200,5],

dye[1]为[300,8],

dye[2]为[250,6]。

dye[2][1]表示先获取索引2的子列表[250,6],再获取该子列表中索引1的元素,即6,选项C符合题意。

分析其他选项:

A. 250:这是dye[2][0]的值,即第三个子列表的第一个元素。

B. 8:这是dye[1][1]的值,即第二个子列表的第二个元素。

C. 6:正确,是dye[2][1]的值。

D. 300:这是dye[1][0]的值,即第二个子列表的第一个元素。

正确答案:C 6


06:执行try: print(int("非遗")) except ValueError: print("输入错误"),输出结果是(    )

A.  非遗

B.  输入错误

C.  0

D.  报错

解析:

本题考察Python中异常处理(try-except)的使用。

在try块中尝试执行可能引发异常的代码,如果发生异常,则跳过try块剩余代码,转到匹配的except块执行。

int()函数将字符串转换为整数,当字符串不是有效的数字格式时会引发ValueError异常。

题目中执行try: print(int("非遗")) except ValueError: print("输入错误"),字符串"非遗"无法转换为整数,int("非遗")会引发ValueError异常,然后被except ValueError:捕获,执行print("输入错误"),因此输出结果为"输入错误",选项B符合题意。

分析其他选项:

A. 非遗:错误,因为int("非遗")会引发异常,不会正常打印"非遗"。

B. 输入错误:正确,异常被捕获后执行打印"输入错误"。

C. 0:错误,int()转换失败不会返回0,而是引发异常。

D. 报错:错误,try-except捕获了异常,程序不会报错终止,而是执行except块中的代码。

正确答案:B 输入错误


07:  非遗戏曲列表opera = ["京剧", "越剧", "昆曲", "豫剧", "黄梅戏"],执行opera[-3]的结果是()

A.  昆曲

B.  越剧

C.  豫剧

D.  京剧

解析:

本题考察Python中列表索引的使用,特别是负索引。

列表的索引可以是正整数(从0开始,从左向右计数)或负整数(从-1开始,从右向左计数)。

负索引-1表示最后一个元素,-2表示倒数第二个,依此类推。

定义列表opera = ["京剧", "越剧", "昆曲", "豫剧", "黄梅戏"],

其负索引对应关系为:

索引-1 = "黄梅戏",

索引-2 = "豫剧",

索引-3 = "昆曲",

索引-4 = "越剧",

索引-5 = "京剧"。

执行opera[-3]即访问倒数第三个元素,结果为"昆曲",选项A符合题意。

正确答案:A 昆曲


08: 非遗竹编工坊产量字典prod = {"周一":75, "周二":82, "周三":78, "周四":85},获取所有值的和的正确代码是(    )

A.  sum(prod)

B.  sum(prod.keys())

C.  sum(prod.values())

D.  len(prod)

解析:

本题考察Python中字典方法的使用,特别是对字典的键、值和项的操作,以及sum()函数和len()函数的使用。

字典prod = {"周一":75, "周二":82, "周三":78, "周四":85},包含键值对,其中键是字符串,值是整数。要获取所有值的和,需要先获取值的序列,然后使用sum()函数求和。

分析选项:

A. sum(prod):错误,

sum()函数可以用于可迭代对象,但直接对字典使用sum()相当于对字典的键进行求和。字典的键是字符串,字符串不能求和,会引发TypeError。

B. sum(prod.keys()):错误,

prod.keys()返回字典所有键的视图,键是字符串"周一"、"周二"等,字符串不能求和,也会引发TypeError。

C. sum(prod.values()):正确,

prod.values()返回字典所有值的视图,值都是整数75,82,78,85,sum()函数可以对它们求和,得到75+82+78+85=320。

D. len(prod):错误,

len(prod)返回字典中键值对的数量,即4,而不是值的和。

正确答案: C sum(prod.values())


09: 列表paper_cut = [120, 150, 180, 130],执行paper_cut.pop(2)后,列表的长度是(   )

A.   3

B.   4

C.   2

D.   5

解析: 

本题考察Python中列表的pop( )方法的使用。

pop()方法用于移除列表中的一个元素(默认最后一个元素),并返回该元素的值。它接受一个可选参数,即要移除元素的索引。移除元素后,列表长度减1。

列表paper_cut = [120, 150, 180, 130],初始长度为4。

执行paper_cut.pop(2)会移除索引为2的元素,即第三个元素180。

移除后,列表变为[120, 150, 130],长度为3。

正确答案:A 3


10:二维数据craftsman = [["李师傅",95,90],["王师傅",88,92],["张师傅",92,89]],表示(姓名,上午产量,下午产量),获取王师傅下午产量的写法是(    )

A.   craftsman[1][2]

B.   craftsman[2][1]

C.   craftsman[1][1]

D.   craftsman[0][2]

解析: 

本题考察Python中二维列表索引的使用。

二维列表是列表的列表,通过两层索引访问元素,第一层索引指定子列表(代表每个工匠),第二层索引指定子列表中的元素(代表姓名、上午产量、下午产量),索引从0开始。

二维列表craftsman = [["李师傅",95,90],["王师傅",88,92],["张师傅",92,89]],

craftsman[0] = 李师傅,

craftsman[1] = 王师傅,

craftsman[2] = 张师傅。

每个子列表内,索引0为姓名,索引1为上午产量,索引2为下午产量。

获取王师傅的下午产量,即获取craftsman[1][2],其值为92,选项A符合题意。

正确答案:A craftsman[1][2]


11:定义非遗剪纸价格字典price = {"窗花":15, "福字":20, "生肖":25},修改福字价格为22的正确语句是(    )

A.   price[福字] = 22

B.   price["福字"] = 22

C.   price.add("福字",22)

D.   price.set("福字",22)

解析: 

本题考察Python中字典修改操作的使用。

字典是一种可变容器模型,可存储键值对,通过键来访问或修改对应的值。

修改字典中已有键的值,可以使用赋值语句:dict[key] = new_value。

定义字典price = {"窗花":15, "福字":20, "生肖":25},

要修改键"福字"对应的值为22,应使用price["福字"] = 22,选项B符合题意。

分析选项:

A. price[福字] = 22:键名福字没有加引号,Python会将其解释为变量名,但福字变量未定义,会导致NameError。

B. price["福字"] = 22:正确,通过字符串键名赋值修改。

C. price.add("福字",22):字典没有add()方法,该方法不存在,会报错。

D. price.set("福字",22):字典没有set()方法,该方法不存在,会报错。

正确答案:B price.set("福字",22)


12:非遗陶艺烧制时间列表time = [1.5, 2.0, 1.8, 2.2, 1.6],计算平均烧制时间的正确代码是()

A.   sum(time)/len(time)

B.   sum(time)*len(time)

C.   max(time)+min(time)

D.   (max(time)-min(time))/2

解析:

本题考察Python中列表的基本运算,特别是计算平均值的方法。平均值等于列表中所有元素的总和除以元素的个数。

在Python中,sum()函数用于计算列表中所有元素的和,len()函数用于获取列表的长度(即元素个数)。

平均烧制时间的计算公式为:总和 / 元素个数,即sum(time)/len(time)。选项A符合题意。

分析选项:

A. sum(time)/len(time):正确,符合平均值的计算公式。

B. sum(time)*len(time):这是总和乘以长度,得到的结果是总和与长度的乘积,数值会远大于实际平均值,没有意义。

C. max(time)+min(time):这是列表中的最大值和最小值的和,只能反映两个极端值的总和,不能代表所有数据的平均水平。

D. (max(time)-min(time))/2:这是最大值和最小值差的一半,表示数据范围的中点,不能反映所有数据的平均值。

正确答案:A.   sum(time)/len(time)


13:执行语句i=0; while i<4: i+=1; if i==3: break; print(i),最后输出的i是(   )

A.   2

B.   3

C.   4

D.   0

解析:

本题考察Python中while循环和break语句的使用。

代码执行流程如下:

  1. 初始化i=0。

  2. while循环条件i<4为真时进入循环。

  3. 循环体内执行i+=1,使i增加1。

  4. 判断如果i==3,则执行break跳出循环,否则执行print(i)输出i。

  5. 循环继续,直到条件不满足或break。

具体执行过程:

  • 第一次循环:i=0,条件真,i+=1后i=1,i==3为假,输出1。

  • 第二次循环:i=1,条件真,i+=1后i=2,i==3为假,输出2。

  • 第三次循环:i=2,条件真,i+=1后i=3,i==3为真,执行break,跳出循环,不再执行后面的print(i)。

因此,print(i)输出的值依次为1和2,最后输出的i是2。

正确答案:A 2


14:定义非遗文创列表cultural = ["皮影", "刺绣", "陶艺", "木雕"],判断"竹编"是否在列表中的正确语句是(    )

A.   "竹编" in cultural

B.   cultural in "竹编"

C.   cultural.index("竹编")

D.   cultural.find("竹编")

解析:

本题考察Python中判断元素是否在列表中的方法。

在Python中,可以使用in关键字来检查一个元素是否存在于列表中,语法为元素 in 列表,返回布尔值True或False。

定义列表cultural = ["皮影", "刺绣", "陶艺", "木雕"],

要判断"竹编"是否在列表中,应使用"竹编" in cultural,该表达式会返回False,因为"竹编"不在列表中。因此选项A符合题意。

分析选项:

B. cultural in "竹编":错误,

in关键字要求左侧为要查找的元素,右侧为容器。这里左右颠倒,变成了检查列表是否在字符串中,逻辑错误,且总是返回False。

C. cultural.index("竹编"):错误,

index()方法用于返回元素在列表中的索引,但如果元素不存在,会引发ValueError异常,不能直接用于判断是否存在(除非结合异常处理)。

D. cultural.find("竹编"):错误,

列表没有find()方法,find()是字符串的方法。

正确答案: A "竹编" in cultural


15:非遗工坊采购宣纸x=450张,分发给9个匠人,执行x//9的结果是(  )

A.   50.0

B.   50

C.   45

D.   9

解析:

本题考察python中算术运算符的使用。

算术运算符有:+(加法)、-(减法)、*(乘法)、/(除法)、//(取整数)、%(取余数)

题目中执行x//9,其中x=450,//是取整数运算,即计算x除以9的商并向下取整。

450除以9的商为50,余数为0,故取整数结果为50,选项B符合题意。

正确答案:B 50


二、判断题

01:Python中元组的元素可以进行修改和删除操作。(  )

A.   正确

B.   错误

解析:

本题考察Python中元组的性质。

元组(tuple)是一种不可变的序列类型,一旦创建,其元素不能被修改、添加或删除。对元组进行修改或删除元素的操作会引发TypeError异常。

因此,说法“Python中元组的元素可以进行修改和删除操作”是错误的。

正确答案  B 错误


02:二维数据可以用列表的列表来表示,通过双层索引可以访问具体元素。(    )

A.   正确

B.   错误

解析: 

本题考察Python中二维数据的表示。

在Python中,二维数据(如矩阵、表格)常用列表的列表(即嵌套列表)表示。外层列表的每个元素是一个内层列表,代表一行或一列数据。通过双层索引(如data[i][j])可以访问具体元素,其中i为外层索引,j为内层索引。

因此,说法“二维数据可以用列表的列表来表示,通过双层索引可以访问具体元素”是正确的。

正确答案  A 正确


03:try-except异常处理结构中,except块可以捕获并处理try块中出现的程序错误。(    )

A.   正确

B.   错误

解析:

本题考察Python中异常处理机制。

try-except结构用于捕获和处理运行时异常

当try块中的代码执行时发生异常,程序会立即跳转到匹配的except块,执行异常处理代码,从而避免程序崩溃。但需要注意的是,try-except只能捕获运行时异常,无法处理语法错误等编译前错误。

因此,说法“try-except异常处理结构中,except块可以捕获并处理try块中出现的程序错误” 正确,这里的“程序错误”通常指运行时异常。

正确答案  A 正确


04:Python中字典的键可以重复,值不可以重复。(    )

A.   正确

B.   错误

解析:

本题考察Python字典的特性。

字典是一种键值对的无序集合,其中键必须是唯一的,不能重复;而值可以重复,没有限制。如果字典中出现重复的键,则后面的值会覆盖前面的值。因此说法错误。

正确答案  B 错误


05:for循环中使用continue语句可以终止整个循环的执行。(    )

A.   正确

B.   错误

解析:

本题考察Python中循环控制语句的作用。

在for循环中,continue语句用于跳过当前迭代的剩余代码,直接进入下一次迭代,而不会终止整个循环。若要完全终止循环,应使用break语句。

正确答案  B 错误


往

期

文

件

走进新意|让思维闪光,让未来可期!(全文带你了解新意编程)

获取更多资料,请关注我们⬇️

考级、竞赛、真题练习各类相关材料,关注即可获取❤️

【系列更新说明】

本公众号定期且长期更新信息素养大赛的真题解析

并收录于本公众号的“信息素养大赛”合集中

助力各位小伙伴们提前备战

每一届的信息素养大赛

新意编程教师团队带领大家

深度剖析真题:

🔍 难点解析 + 避坑指南

💻 清晰步骤 + 多解法演示

📝 得分要点全掌握!

我们还免费向大家提供

【编程每日一练】

【逻辑思维每日一练】

一天一题,提升实战力!

并有专属教师为您答疑解惑

快与我们

一起学习!一起进步!

        新意编程,秉持以孩子的教育为首的理念,有持证上岗带教经验丰富、专业扎实的老师。专业的STEAM教育,专注培养孩子的逻辑思维、专注力,引导孩子结合课内外知识、结合生活,链接经验、解决问题等多方面能力。选择新意,让孩子学有所获、学有所成;让家长放心和安心。

👇新意由来👇

1、一心一意做编程

2、做有新意的编程

3、诚心诚意为孩子

更多内容请关注微信公众号:新意编程

最新文章

随机文章