上一篇
本次分享集合
正文
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典
创建空>>> setone=set()>>> type(setone)<class \'set\'>>>> setoneset()>>>创建一个集合,这里区别于字典>>> settwo={\'1\'}>>> type(settwo)<class \'set\'>>>> settwo{\'1\'}>>>>>> setthree=set(\'1\')>>> setthree{\'1\'}#如果我们传递int类型呢,>>> setthree=set(1)Traceback (most recent call last):File \"<stdin>\", line 1, in <module>TypeError: \'int\' object is not iterable>>> setthree=set(123)Traceback (most recent call last):File \"<stdin>\", line 1, in <module>TypeError: \'int\' object is not iterable#那么int类型如何创建集合呢,用大括号方式q方式去创建就可以>>> setthree={1,23}>>> setthree{1, 23}#判断元素是否在集合内>>> 1 in setthreeTrue
在集合 settwo但是不在setthree中,如何实现
>>> settwo={\'1\'}>>> setthree={1,23}>>> settwo - setthree{\'1\'}
两个集合中的所有元素
>>> settwo | setthree{1, 23, \'1\'}
两个集合中共同元素
>>> settwo & setthreeset()
不同时在这两个集合里面的元素
>>> settwo ^ setthree{1, \'1\', 23}
如何在集合中新增
>>> settwo{\'1\'}>>> settwo.add(1)>>> settwo{1, \'1\'}
如果是新增其中的一个集合
>>> settwo{1, \'1\'}>>> setthree{1, 23}>>> settwo.update(setthree)#相同的会合并>>> settwo{1, 23, \'1\'}
移除
#移除不存在会报错,需要容错>>> settwo.remove(1)>>> settwo{23, \'1\'}# 移除,会返回移除的数据>>> settwo.pop()23>>> settwo{\'1\'}#删除不存在不会报错的删除>>> settwo{\'1\'}>>> settwo.discard(2)>>> settwo{\'1\'}
计算长度
>>> len(settwo)1>>> settwo.__len__()1
清空:
>>> settwo.clear()>>> settwoset()
当然还有其他的用法,可以用,dir查看
>>> dir(set)[\'__and__\', \'__class__\', \'__contains__\', \'__delattr__\', \'__dir__\', \'__doc__\', \'__eq__\', \'__format__\', \'__ge__\', \'__getattribute__\', \'__gt__\', \'__hash__\', \'__iand__\',\'__init__\', \'__init_subclass__\', \'__ior__\', \'__isub__\', \'__iter__\', \'__ixor__\', \'__le__\', \'__len__\', \'__lt__\', \'__ne__\', \'__new__\', \'__or__\', \'__rand__\', \'__reduce__\', \'__reduce_ex__\', \'__repr__\', \'__ror__\', \'__rsub__\', \'__rxor__\', \'__setattr__\', \'__sizeof__\', \'__str__\', \'__sub__\', \'__subclasshook__\', \'__xor__\', \'add\', \'clear\', \'copy\', \'difference\', \'difference_update\', \'discard\', \'intersection\', \'intersection_update\', \'isdisjoint\', \'issubset\', \'issuperset\', \'pop\', \'remove\', \'symmetric_difference\', \'symmetric_difference_update\', \'union\', \'update\']
用help看具体的用法
上面是我们分享的如何去查找包含的方法,那么我们可以根据help去查看这些方法如何使用,这里呢,不全部讲解,大家可以通过dir 和help去研究其他方法的使用。动手去找对应的方法去研究,你会发现,自己动手发现的,记忆会更深。