SET集合的作用大概就是用来确保所包含的元素的唯一性,就像世界上没有两片完全相同的树叶一样,集合内不可能存在两个相同的元素!

>>> set1 = set([1,2,3,4,5,5])
>>> set1
{1, 2, 3, 4, 5}     #集合里没有重复的元素

再看看这里

>>> num = {}
>>> type(num)
<class 'dict'>   #空字典
>>> num2 = {1,2,3,4,5}
>>> type(num2)
<class 'set'>     #没有映射关系,就不是字典
>>> num2[2]
Traceback (most recent call last):
  File "<pyshell#47>", line 1, in <module>
    num2[2]
TypeError: 'set' object is not subscriptable   #集合里的元素不能被索引
还有一个原因,类似字典的存储方式,哈希哈希相同的值就存放到同一个地址了,故有无序性
>>> num1 = [1,2,3,4,5,5,3,1,0]    # 数组num1
>>> num1 = list(set(num1))           #先将数组转换成集合再转换成列表
>>> num1       #集合会把数字大小顺序排列
[0, 1, 2, 3, 4, 5]

可以使用for语句把集合中的数据一个个读取出来,也可以通过innot in判断一个元素是否在集合中已经存在

 

>>> num2 = set(num1)
>>> num2
{0, 1, 2, 3, 4, 5}
>>> 1 in num2   #判断数字1是否在num2
True
>>> '1' in num2
False
>>> num2.add(6)     #列表是append,集合是add
>>> num2
{0, 1, 2, 3, 4, 5, 6}
>>> num2.remove(4)     #删除一个元素
>>> num2
{0, 1, 2, 3, 5, 6}
>>> num3 = frozenset(num1)    #冻结,不能改变这个集合
>>> num3.add(7)
Traceback (most recent call last):
  File "<pyshell#68>", line 1, in <module>
    num3.add(7)
AttributeError: 'frozenset' object has no attribute 'add'

 

还有基本求集合里多少个元素的len()

嗯嗯其他很多用法就借图说话