内容正文:
编写说明:安徽省普通高校对口招生专业理论考试《计算机类考纲百套卷》,依据《安徽省普通高校对口招生计算机类专业课考试纲要》编写。每门课程均分三层训练:紧扣考纲 “掌握”“理解” 要求编写考点训练卷;强化知识交叉与场景关联,按考纲专题编专题训练卷;聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第13卷,按《计算机编程基础-Python语言》范围和要求编写。具体内容为:Python集合的定义、创建集合、集合的特征、集合的操作、集合的运算。
安徽省《计算机考纲百套卷》 第13卷
《计算机编程基础-Python语言》
集合 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共25小题,每题2分,共50分)
1.下列关于Python集合的描述,正确的是( )。
A. 集合中的元素是有序的
B. 集合中的元素必须是不可变
C. 集合支持通过索引访问元素
D. 集合中的元素可以重复
2.创建空集合的正确方式是( )。
A. {}
B. []
C. ()
D. set()
3.执行 s = {1, 2, 3, 2}; s.add(4); print(sum(s))的输出是( )。
A. 8
B. 9
C. 10
D. 11
4.执行 s = {1, 2, 3}; s.remove(5)的结果是( )。
A. 返回 {1, 2, 3}
B. 抛出 KeyError
C. 抛出 ValueError
D. 返回 None
5.下列哪个元素可以放入集合中( )。
A. [1, 2]
B. (1, 2)
C. {1: 'a'}
D. {1, 2}
6.执行 s = set("hello"); print(s)的输出可能是( )。
A. {'h', 'e', 'l', 'l', 'o'}
B. {'h', 'e', 'l', 'o'}
C. {'h', 'e', 'o'}
D. 'hello'
7.表达式 {1, 2, 3} & {2, 3, 4} 的结果是( )。
A. {1, 2, 3, 4}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
8.表达式 {1, 2, 3} | {2, 3, 4} 的结果是( )。
A. {1, 2, 3, 4}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3}
9.表达式 {1, 2, 3} - {2, 3, 4} 的结果是( )。
A. {1, 4}
B. {1}
C. {4}
D. {2, 3}
10.表达式 {1, 2, 3} ^ {2, 3, 4} 的结果是( )。
A. {1, 2, 3, 4}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
11.下列哪个操作会清空集合 s 中的所有元素( )。
A. s.clear()
B. s.remove()
C. del s
D. s = {}
12.执行 s = {1, 2, 3}; s.clear(); print(s) 的输出是( )。
A. {1, 2, 3}
B. {}
C. set()
D. None
13.s1="hello"; s2="world"; print(set(s1)&set(s2))( )。
A. {'o', 'l'}
B. {'o', 'l', 'e'}
C. {'o', 'l', 'e', 'd'}
D. {'o', 'l', 'w', 'd'}
14.执行 s = {(1,2), [3,4]} 的结果是( )。
A. 创建成功
B. 抛出 TypeError
C. 抛出 ValueError
D. 忽略 [3,4]
15.对于集合 s = {1, 2, 3},下列哪个语句会报错( )。
A. s.add(4)
B. s.remove(2)
C. s[1]
D. s.clear()
16.表达式 set("abca") ^ set("abc") 的结果为( )。
A. {}
B. set()
C. {'b', 'c'}
D. {'b', 'c', 'a'}
17.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.intersection(s2) 的结果是( )。
A. {1, 2}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
18.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.union(s2) 的结果是( )。
A. {1, 2}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
19.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.difference(s2) 的结果是( )。
A. {1}
B. {4}
C. {2, 3}
D. {1, 4}
20.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.symmetric_difference(s2) 的结果是( )。
A. {1, 4}
B. {2, 3}
C. {3, 4}
D. {1, 2, 3, 4}
21.下列哪个选项可以正确地将字符串 "hello" 的字符去重后重新组合成一个字符串( )。
A. str(set("hello"))
B. set("hello")
C. list(set("hello"))
D. "".join(set("hello"))
22.执行 s = set(); s.add([1,2]) 的结果是( )。
A. s 变为 {1,2}
B. s 变为 {[1,2]}
C. 抛出 TypeError
D. 抛出 ValueError
23.已知 s = {1, 2, 3, 4, 2},则 len(s) 的结果是( )。
A. 2
B. 3
C. 4
D. 5
24.执行 s = {1, 2, 3}; s.add(4); s.add(2); print(s)的输出是( )。
A. {1, 2, 3, 4}
B. {1, 2, 3, 2, 4}
C. {1, 2, 3, 4, 2}
D. {1, 2, 3}
25.下列关于集合运算的说法,正确的是( )。
A. & 运算符用于并集
B. | 运算符用于交集
C. - 运算符用于对称差集
D. ^ 运算符用于对称差集
2、 填空题(本大题共25小题,每题2分,共50分)
1.集合的元素必须满足 ________ 性,即元素不能是列表、字典等可变类型。
2.集合的特点是确定性、互异性和 ________ 性。
3.创建空集合应使用内置函数 ________。
4.表达式 set("abac") 的结果是 ________。
5.集合的 ________ 方法用于向集合中添加一个元素,如果元素已存在则不做任何操作。
6.s=len(set("helloworld"))则s的值为 ________。
7.删除集合中所有元素的方法是 ________。
8.表达式 {5, 6, 7} & {8, 9, 10} 的结果是 ________。
9.表达式 {5, 6, 7} | {6, 8, 9} 的结果是 ________。
10.表达式 set("abcdef")-set("acdfga") 的结果是 ________。
11.表达式 set("abcdef")^set("acdfga") 的结果是 ________。
12.表达式sum({2,3,4,5,3,6})的结果为_______。
13.将列表 [1, 2, 2, 3] 转换为集合后,集合中包含 ________ 个元素。
14.集合的 ________ 方法返回两个集合的交集,等价于 & 运算符。
15.创建集合 s={1,2,3,(4,[5,6])} 是合法的,该说法是______(填正确或错误)
16.集合不支持切片操作,该说法是______(填正确或错误)。
17.创建集合时,如果有重复的元素执行代码时则会报错,该说法是______(填正确或错误)。
18.执行 s = set(); s.add(5); s.add(3); s.add(5); len(s)的结果是 ________。
19.表达式 {1} in {1, 2, 3}的结果是 ________。
20.s={"a","b","c","d"};s.clear()则s的值为________。
21.执行 s = {1, 2, 3, 2}; s.remove(2); print(2 in s) 的输出是 ________。
22.表达式 type({}) 的结果是 ________。
23.表达式 type(set()) 的结果是 ________。
24.lst=[1,3,5,7,3,5];s=set(lst);print(sum(s))的结果为________。
25.执行下面代码后,变量result的值为 ________。
A = {1, 2, 3, 5, 7}
B = {2, 4, 6, 7}
C = {3, 5, 7, 9}
result = (A | B) - (C & A)
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:安徽省普通高校对口招生专业理论考试《计算机类考纲百套卷》,依据《安徽省普通高校对口招生计算机类专业课考试纲要》编写。每门课程均分三层训练:紧扣考纲 “掌握”“理解” 要求编写考点训练卷;强化知识交叉与场景关联,按考纲专题编专题训练卷;聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第13卷,按《计算机编程基础-Python语言》范围和要求编写。具体内容为:Python集合的定义、创建集合、集合的特征、集合的操作、集合的运算。
安徽省《计算机考纲百套卷》 第13卷
《计算机编程基础-Python语言》
集合 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共25小题,每题2分,共50分)
1.下列关于Python集合的描述,正确的是( )。
A. 集合中的元素是有序的
B. 集合中的元素必须是不可变
C. 集合支持通过索引访问元素
D. 集合中的元素可以重复
【答案】B
【解析】
A错误:集合是无序的。
B正确:集合元素必须是可哈希的(不可变类型),如整数、字符串、元组等。
C错误:集合不支持索引。
D错误:集合元素互异,不允许重复。
2.创建空集合的正确方式是( )。
A. {}
B. []
C. ()
D. set()
【答案】D
【解析】
A:{} 创建空字典。
B:[] 创建空列表。
C:() 创建空元组。
D:set() 创建空集合。
3.执行 s = {1, 2, 3, 2}; s.add(4); print(sum(s))的输出是( )。
A. 8
B. 9
C. 10
D. 11
【答案】C
【解析】
s = {1, 2, 3, 2} 自动去重为 {1, 2, 3}。
s.add(4) 添加4,集合变为 {1, 2, 3, 4}。
sum(s) = 1+2+3+4 = 10。
4.执行 s = {1, 2, 3}; s.remove(5)的结果是( )。
A. 返回 {1, 2, 3}
B. 抛出 KeyError
C. 抛出 ValueError
D. 返回 None
【答案】B
【解析】remove() 在元素不存在时抛出KeyError
5.下列哪个元素可以放入集合中( )。
A. [1, 2]
B. (1, 2)
C. {1: 'a'}
D. {1, 2}
【答案】B
【解析】
集合元素必须是不可变(可哈希)类型。
A:列表可变,不可哈希。
B:元组不可变,可哈希。
C:字典可变,不可哈希。
D:集合可变,不可哈希。
6.执行 s = set("hello"); print(s)的输出可能是( )。
A. {'h', 'e', 'l', 'l', 'o'}
B. {'h', 'e', 'l', 'o'}
C. {'h', 'e', 'o'}
D. 'hello'
【答案】B
【解析】set("hello") 将字符串中的字符去重,得到 {'h','e','l','o'}(顺序不定)
7.表达式 {1, 2, 3} & {2, 3, 4} 的结果是( )。
A. {1, 2, 3, 4}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
【答案】B
【解析】&求交集,共有元素为 2 和 3
8.表达式 {1, 2, 3} | {2, 3, 4} 的结果是( )。
A. {1, 2, 3, 4}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3}
【答案】A
【解析】|求并集,合并所有元素。
9.表达式 {1, 2, 3} - {2, 3, 4} 的结果是( )。
A. {1, 4}
B. {1}
C. {4}
D. {2, 3}
【答案】B
【解析】-求差集,属于第一个但不属于第二个的元素,只有 1
10.表达式 {1, 2, 3} ^ {2, 3, 4} 的结果是( )。
A. {1, 2, 3, 4}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
【答案】C
【解析】^求对称差集,即并集减去交集,结果为{1, 4}
11.下列哪个操作会清空集合 s 中的所有元素( )。
A. s.clear()
B. s.remove()
C. del s
D. s = {}
【答案】A
【解析】
A:clear() 清空集合内容。
B:remove() 需要指定元素。
C:del s 删除变量本身。
D:s = {} 将 s 重新绑定为空字典,原集合可能被回收,但并非清空操作
12.执行 s = {1, 2, 3}; s.clear(); print(s) 的输出是( )。
A. {1, 2, 3}
B. {}
C. set()
D. None
【答案】C
【解析】空集合的字符串表示为 set(),而不是{}
13.s1="hello"; s2="world"; print(set(s1)&set(s2))( )。
A. {'o', 'l'}
B. {'o', 'l', 'e'}
C. {'o', 'l', 'e', 'd'}
D. {'o', 'l', 'w', 'd'}
【答案】A
【解析】set(s1) = {'h','e','l','o'},set(s2) = {'w','o','r','l','d'},交集为 {'l','o'}
14.执行 s = {(1,2), [3,4]} 的结果是( )。
A. 创建成功
B. 抛出 TypeError
C. 抛出 ValueError
D. 忽略 [3,4]
【答案】B
【解析】列表[3,4]可变,不可哈希,不能作为集合元素,抛出TypeError
15.对于集合 s = {1, 2, 3},下列哪个语句会报错( )。
A. s.add(4)
B. s.remove(2)
C. s[1]
D. s.clear()
【答案】C
【解析】集合不支持索引,s[1]会抛出TypeError。
16.表达式 set("abca") ^ set("abc") 的结果为( )。
A. {}
B. set()
C. {'b', 'c'}
D. {'b', 'c', 'a'}
【答案】B
【解析】set("abca") = {'a','b','c'},set("abc") = {'a','b','c'},两者相等,对称差集为空集合set()
17.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.intersection(s2) 的结果是( )。
A. {1, 2}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
【答案】B
【解析】intersection()返回交集,即{2, 3}。
18.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.union(s2) 的结果是( )。
A. {1, 2}
B. {2, 3}
C. {1, 4}
D. {1, 2, 3, 4}
【答案】D
【解析】union()返回并集,即{1,2,3,4}
19.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.difference(s2) 的结果是( )。
A. {1}
B. {4}
C. {2, 3}
D. {1, 4}
【答案】A
【解析】difference()返回差集,即s1 - s2 = {1}。
20.执行 s1 = {1, 2, 3}; s2 = {2, 3, 4}; s1.symmetric_difference(s2) 的结果是( )。
A. {1, 4}
B. {2, 3}
C. {3, 4}
D. {1, 2, 3, 4}
【答案】A
【解析】
对称差集 s1.symmetric_difference(s2) 返回属于 s1 或 s2 但不同时属于两者的元素,即 (s1 - s2) ∪ (s2 - s1)。
s1 - s2 = {1, 2, 3} - {2, 3, 4} = {1}
s2 - s1 = {2, 3, 4} - {1, 2, 3} = {4}
合并得 {1, 4}。
因此正确答案为 A。
21.下列哪个选项可以正确地将字符串 "hello" 的字符去重后重新组合成一个字符串( )。
A. str(set("hello"))
B. set("hello")
C. list(set("hello"))
D. "".join(set("hello"))
【答案】D
【解析】
A:str(set) 返回集合的字符串表示,如 "{'h','e','l','o'}"。
B:返回集合,不是字符串。
C:返回列表,不是字符串。
D:join 将集合中的字符拼接成字符串,正确
22.执行 s = set(); s.add([1,2]) 的结果是( )。
A. s 变为 {1,2}
B. s 变为 {[1,2]}
C. 抛出 TypeError
D. 抛出 ValueError
【答案】C
【解析】列表可变,不可哈希,不能作为集合元素,抛出TypeError
23.已知 s = {1, 2, 3, 4, 2},则 len(s) 的结果是( )。
A. 2
B. 3
C. 4
D. 5
【答案】C
【解析】集合自动去重,实际元素为{1,2,3,4},长度为4
24.执行 s = {1, 2, 3}; s.add(4); s.add(2); print(s)的输出是( )。
A. {1, 2, 3, 4}
B. {1, 2, 3, 2, 4}
C. {1, 2, 3, 4, 2}
D. {1, 2, 3}
【答案】A
【解析】初始{1,2,3},添加4得{1,2,3,4},再添加2(已存在)无变化,最终 {1,2,3,4}
25.下列关于集合运算的说法,正确的是( )。
A. & 运算符用于并集
B. | 运算符用于交集
C. - 运算符用于对称差集
D. ^ 运算符用于对称差集
【答案】D
【解析】
A错误:& 是交集。
B错误:| 是并集。
C错误:- 是差集。
D正确:^ 是对称差集。
2、 填空题(本大题共25小题,每题2分,共50分)
1.集合的元素必须满足 ________ 性,即元素不能是列表、字典等可变类型。
【答案】确定
【解析】集合元素必须是不可变类型,即满足可哈希性。
2.集合的特点是确定性、互异性和 ________ 性。
【答案】无序
【解析】集合不记录元素顺序。
3.创建空集合应使用内置函数 ________。
【答案】set()
【解析】{}创建空字典
4.表达式 set("abac") 的结果是 ________。
【答案】{'a', 'b', 'c'} (元素位置不考虑)
【解析】字符串去重后得到三个字符的集合
5.集合的 ________ 方法用于向集合中添加一个元素,如果元素已存在则不做任何操作。
【答案】add()
【解析】add()添加单个元素
6.s=len(set("helloworld"))则s的值为 ________。
【答案】7
【解析】"helloworld"中去重后字符有 h,e,l,o,w,r,d 共7个。
7.删除集合中所有元素的方法是 ________。
【答案】clear()
【解析】clear()清空集合。
8.表达式 {5, 6, 7} & {8, 9, 10} 的结果是 ________。
【答案】set()
【解析】交集为空,返回空集合。
9.表达式 {5, 6, 7} | {6, 8, 9} 的结果是 ________。
【答案】{5, 6, 7, 8, 9}
【解析】并集合并所有元素。
10.表达式 set("abcdef")-set("acdfga") 的结果是 ________。
【答案】{'b', 'e'}
【解析】set("abcdef") = {'a','b','c','d','e','f'},set("acdfga") = {'a','c','d','f','g'},差集得{'b','e'}。
11.表达式 set("abcdef")^set("acdfga") 的结果是 ________。
【答案】{'b', 'g', 'e'}
【解析】
set("abcdef") 将字符串拆分为字符集合,得到 {'a', 'b', 'c', 'd', 'e', 'f'}。
set("acdfga") 去重后得到 {'a', 'c', 'd', 'f', 'g'}。
运算符 ^ 表示对称差集,即属于其中一个集合但不属于另一个集合的元素。
因此{'b','e','g'}
12.表达式sum({2,3,4,5,3,6})的结果为_______。
【答案】20
【解析】集合去重后为{2,3,4,5,6},和为 20。
13.将列表 [1, 2, 2, 3] 转换为集合后,集合中包含 ________ 个元素。
【答案】3
【解析】去重后为{1,2,3},共3个元素。
14.集合的 ________ 方法返回两个集合的交集,等价于 & 运算符。
【答案】intersection()
【解析】集合的交集方法是intersection()
15.创建集合 s={1,2,3,(4,[5,6])} 是合法的,该说法是______(填正确或错误)
【答案】错误
【解析】元组中包含列表[5,6],列表可变,导致整个元组不可哈希,不能作为集合元素
16.集合不支持切片操作,该说法是______(填正确或错误)。
【答案】正确
【解析】集合无序,无索引,不支持切片
17.创建集合时,如果有重复的元素执行代码时则会报错,该说法是______(填正确或错误)。
【答案】错误
【解析】重复元素自动去重,不会报错
18.执行 s = set(); s.add(5); s.add(3); s.add(5); len(s)的结果是 ________。
【答案】2
【解析】最终集合{5,3},长度2
19.表达式 {1} in {1, 2, 3}的结果是 ________。
【答案】False
【解析】{1}是一个集合,不是整数1,因此不在集合中
20.s={"a","b","c","d"};s.clear()则s的值为________。
【答案】set()
【解析】清空后为空集合,显示为set()
21.执行 s = {1, 2, 3, 2}; s.remove(2); print(2 in s) 的输出是 ________。
【答案】False
【解析】s初始{1,2,3},remove(2)删除2,集合变为{1,3},2不在其中
22.表达式 type({}) 的结果是 ________。
【答案】<class 'dict'>
【解析】{}是空字典
23.表达式 type(set()) 的结果是 ________。
【答案】<class 'set'>
【解析】set()创建空集合
24.lst=[1,3,5,7,3,5];s=set(lst);print(sum(s))的结果为________。
【答案】16
【解析】去重后{1,3,5,7},和为16。
25.执行下面代码后,变量result的值为 ________。
A = {1, 2, 3, 5, 7}
B = {2, 4, 6, 7}
C = {3, 5, 7, 9}
result = (A | B) - (C & A)
【答案】{1, 2, 4, 6}
【解析】
A | B = {1,2,3,4,5,6,7}
C & A = {3,5,7}
差集得 {1,2,4,6}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$