Python练习题详解之集合(小白友好)
你好!欢迎来到Python练习题详解系列。为了让小白(也就是我本人)更好的理解代码,打好编程基础,我决定仔细地解说一些练习题。欢迎阅读!
首先,我们来看看集合 (set) 是什么~
他和字典非常像,如果大括号里没有映射,那就变成了一个集合。
集合具有唯一性,集合里会帮你剔除掉重复的数据。
集合里面没有顺序,所以不支持索引 indexing。
创建集合有两种方法:
一种是直接把一堆元素用大括号{ }括起来;
另一种是用set(),括号里可以是列表或者元祖~
如果我们想访问集合中的元素,应该怎么办呢?
由于集合中的元素是无序的,所以并不能像序列那样用下标来进行访问,但是可以使用迭代把集合中的数据一个个读取出来:
当然也可以使用in或者not in判断一个元素是否在集合中已经存在:
另外,使用add()方法可以为集合添加元素,使用remove()方法可以删除集合中已知的元素:
有些时候,我们希望集合中的元素具有稳定性,也就是说,像元组一样不能随意的增加或者删除集合中的元素。那么我们可以定义不可变集合,这里使用的是frozenset()函数,没错,就是把元素frozen(冰冻)起来:
题目:
我想要删除一个列表里重复的数据,应该怎么做呢?
列表如下:
number1 = [1,2,3,4,5,2,3,4,5]
思路:因为我们学了集合,而集合具有唯一性,可以剔除掉多余的元素。那么我们要把它换成集合,用集合的形式可以把列表里重复的数字删除,那就是要用到set()
而输出依然要是列表的话,我们就再用一个list()来转化他。
答案:
number1 = list ( set ( number1 ) )