测试题
0.请问集合的唯一作用是什么?
去除序列中的重复元素,保证元素唯一性。
>>> set3 = {1,2,3,4,5,2,3,4,5,4}
>>> set3
{1, 2, 3, 4, 5}
1.如果你希望创建的集合是不变的,应该怎么做?
使用frozenset()方法创建集合。
>>> set2 = frozenset([1,2,3,4,5])
>>> set2.add(6)
Traceback (most recent call last):
File "" , line 1, in <module>
set2.add(6)
AttributeError: 'frozenset' object has no attribute 'add'
使用frozenset()创建后不能修改,会报错。
2.请问如何确定一个集合里面有多少个元素?
使用for和in。
i = 0
set1 = {1,2,3,4,5,6,7}
for each in set1:
i++
print(i)
3.请目测以下代码会输出什么?
>>> num_set = set([1,2,3,4,5])
>>> num_set[0]
报错,因为集合没有索引值,是无序的。
4.请问set1 = {[1,2]}和set1 = set([1,2])是一样的吗?
不一样。前者报错,[1,2]是列表,列表地址不是固定的,不是可哈希的对象。后者是包含两个元素1,2的集合。
5.打开你的IDLE,输入set1 = {1,1.0},你发现什么?
>>> set1 = {1,1.0}
>>> set1
{1}
因为python的哈希函数计算相同元素的哈希值,也就是地址是一样的。
6.如何给集合添加和删除元素?
使用add和remove方法。
>>> set4 ={1,2,3,4,6}
>>> set4.add(5)
>>> set4
{1, 2, 3, 4, 5, 6}
>>> set4.remove(6)
>>> set4
{1, 2, 3, 4, 5}
不过注意只能添加一个元素,而且不能是列表,集合等。