注:文中练习题仅用于复习相关知识点,与实际复赛题型无关。复赛考查题型:单选题5道,多选题5道,编程题4道
列表与集合专项练习
一、列表专题(共 6 题)
第 1 题 添加 n 个元素求最值
考查知识点:列表创建、append() 方法、max()、min()、for 循环 题目描述:现有非遗作品评分列表 lst = [10,20],先输入整数 n 代表待录入的评分数量,再依次输入 n 个非遗作品分数并添加到列表末尾,最终输出所有评分中的最高分与最低分。
python # 创建初始非遗作品评分列表 lst = [10, 20] # 输入要添加的评分个数 n = _______________ # 循环n次录入分数 for i in range(_______): num = int(input()) lst.__________(num) # 求取最高分、最低分 max_num = __________(lst) min_num = __________(lst) # 输出结果 print(max_num) print(min_num) |
输入样例:
输出样例:
第 2 题 求列表元素平均值
考查知识点:sum()、len()、平均值计算、round() 保留小数 题目描述:依次输入 4 件非遗手工艺品的评分并存入列表,计算平均分,结果保留 1 位小数后输出。
python # 依次输入4件非遗作品评分 n1 = int(input()) n2 = int(input()) n3 = int(input()) n4 = int(input()) # 创建评分列表 lst = [n1, n2, n3, n4] # 计算平均分:总分 / 作品数量 avg = __________(lst) / __________(lst) # 保留1位小数并输出平均分 print(__________(avg, 1)) |
输入样例:
输出样例:
第 3 题 列表原地升序、降序排序
考查知识点:列表 sort() 方法、reverse 参数 题目描述:输入 5 位非遗传承人的作品评分存入列表,先将评分升序排序并输出,再对原列表进行降序排序并输出。
python lst = [] # 循环录入5位传承人的作品分数 for _ in range(5): a = int(input()) lst.__________(a) # 分数原地升序排序 lst.__________() print(lst) # 分数原地降序排序 lst.sort(__________=True) print(lst) |
输入样例:
输出样例:
Plain Text [1, 3, 5, 7, 9] [9, 7, 5, 3, 1] |
第 4 题 sorted () 生成新列表排序
考查知识点:sorted() 函数、reverse 参数、区分 sort 与 sorted题目描述:输入 4 项非遗项目的综合得分存入列表,分别输出原始得分列表、升序排列的新列表、降序排列的新列表。
python nums = [] for i in range(4): nums.append(int(input())) # 输出原始得分列表 print(nums) # 生成升序得分新列表 asc = __________(nums) print(asc) # 生成降序得分新列表 desc = sorted(nums, __________=True) print(desc) |
输入样例:
输出样例:
Plain Text [8, 2, 6, 4] [2, 4, 6, 8] [8, 6, 4, 2] |
第 5 题 列表遍历
考查知识点:for 循环遍历列表语法 题目描述:非遗项目列表为 ["剪纸", "苏绣", "陶艺"],遍历列表并逐行输出每一项非遗名称。
python lst = ["剪纸", "苏绣", "陶艺"] # 遍历非遗项目列表 for item _______________ lst: print(item) |
输出样例:
第 6 题 列表删除元素
考查知识点:列表 remove() 方法 题目描述:非遗清单列表存在重复项目 ["端午香囊", "龙舟模型", "端午香囊"],输入需要删除的非遗名称,删除列表中第一个匹配元素,输出处理后的清单。
python lst = ["端午香囊", "龙舟模型", "端午香囊"] item = input().strip() # 删除列表中第一个匹配的非遗项目 lst.__________(item) print(lst) |
输入样例:
输出样例:
Plain Text ['龙舟模型', '端午香囊'] |
二、集合专题(共 5 题)
第 1 题 创建集合并自动去重
考查知识点:集合创建、集合元素唯一(自动去重)特性 题目描述:输入 3 个非遗项目编号,将编号存入集合,利用集合去重特性,输出最终的编号集合。
python # 输入3个非遗项目编号 a = int(input()) b = int(input()) c = int(input()) # 创建编号集合 s = {_______, _______, _______} # 输出去重后的编号集合 print(_______) |
输入样例:
输出样例:
第 2 题 列表转集合去重并统计长度
考查知识点:set() 类型转换、集合去重、len() 函数 题目描述:输入 5 个非遗项目编号存入列表,将列表转为集合完成去重,依次输出原编号列表、去重后的编号集合、非遗项目总数量。
python lst = [] for i in range(5): num = int(input()) lst.append(num) # 输出原始编号列表 print(lst) # 列表转为集合,自动去除重复编号 s = __________(lst) print(s) # 输出去重后的非遗项目总数 print(__________(s)) |
输入样例:
输出样例:
Plain Text [2, 5, 2, 8, 5] {2, 5, 8} 3 |
第 3 题 集合添加元素与成员判断
考查知识点:集合 add() 方法、in 成员判断 题目描述:已有非遗展区编号集合 s = {10, 20, 30},输入一个新展区编号并添加到集合中,判断该编号是否在展区集合内并输出结果。
python # 创建非遗展区编号集合 s = {10, 20, 30} n = int(input()) # 向集合添加新展区编号 s.__________(n) # 判断编号是否存在于展区集合中 print(n ________ s) |
输入样例:
输出样例:
第 4 题 集合删除元素
考查知识点:集合 remove() 方法 题目描述:非遗展品集合为 {"苹果", "香蕉", "橙子", "葡萄"}(非遗果雕作品名称),输入需要移除的果雕名称,删除对应元素后输出剩余展品集合。
python s = {"苹果", "香蕉", "橙子", "葡萄"} fruit = input().strip() # 删除指定非遗果雕展品 s.__________(fruit) print(s) |
输入样例:
输出样例:
Plain Text {'苹果', '橙子', '葡萄'} |
第 5 题 集合遍历与条件判断
考查知识点:集合遍历、if 条件判断 题目描述:输入 3 个非遗作品评分创建集合,遍历集合,逐行输出分数大于 10 的作品评分。
python a = int(input()) b = int(input()) c = int(input()) s = {a, b, c} # 遍历作品评分集合 for num ________ s: # 判断分数是否大于10 if num > 10: print(num) |
输入样例:
输出样例:
参考答案
一、列表专题
1.int(input())、n、append、max、min
2.sum、len、round
3.append、sort、reverse
4.sorted、reverse
5.in
6.remove
二、集合专题
1.a、b、c、s
2.set、len
3.add、in
4.remove
5.in