1、访问集合中的元素
集合本身是无序的,所以想要访问的话,是无法通过索引定位。但我们可以把集合转化为列表后进行访问。转化处理使用list关键字。
objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
print(list(objs))
输出为:[1, 3.14, 'a']
objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
print(list(objs))
输出为:['the', 1, 3.14, 'a', 'Tom', 'Abs', 'tom']
显然,转化过程中,数据的先后没有啥规律可循。
2、判断元素是否在集合中存在,in/not in,返回布尔型数据
objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
print(1 in objs) 输出:True
print('ab' in objs) 输出:False
3、集合数据合并 update
update()使一个集合中数据合并到另一个集合中。
>>> objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
>>> obj2=set(['anna', 1])
>>> objs.update(obj2)
>>> print(objs)
{'the', 1, 3.14, 'a', 'Tom', 'Abs', 'anna', 'tom'}
>>> print(obj2)
{1, 'anna'}
>>>
可以看到,objs被更新了,但obj2没有变化。另外重复性的值,被过滤掉了。
4、删除集合中的元素pop()
pop()的删除,是随机性删除
>>> objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
>>> objs.pop()
'the'
>>> print(objs)
{1, 3.14, 'a', 'Tom', 'Abs', 'tom'}
>>> objs.pop()
1
>>> print(objs)
{3.14, 'a', 'Tom', 'Abs', 'tom'}
>>>
5、定位删除remove(值),删除指定的值
>>> objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
>>> objs.remove(1)
>>> print(objs)
{'the', 3.14, 'a', 'Tom', 'Abs', 'tom'}
>>>
删除不存在的值,会报错
6、清除数据clear()
这个操作会清空集合中的左右数据
>>> objs=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
>>> objs.clear()
>>> print(objs)
set()
>>>
7、取集合中的交集 &
操作结果会得到一个新的集合,不改变原来的集合。新集合中的数据是在两个集合中共存的数据
>>> obj1=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
>>> obj2=set([1,'the'])
>>> print(obj1 & obj2)
{'the', 1}
>>>
8、集合合并 |
这个操作符是让两个集合合并为一个新的集合,不改变原来的集合
>>> obj1=set([1,2,3])
>>> obj2=set(['a','b','c'])
>>> print(obj1|obj2)
{1, 2, 3, 'c', 'b', 'a'}
>>> print(obj1)
{1, 2, 3}
>>> print(obj2)
{'c', 'b', 'a'}
>>>
9、集合差 seta-setb
这个操作符返回一个新的集合,元素是所有seta中不存在于setb中的元素
>>> obj1=set([1,2,3,'a'])
>>> obj2=set(['a','b','c',1])
>>> print(obj1-obj2)
{2, 3}
>>> print(obj2 - obj1)
{'c', 'b'}
>>>
10、异或^
这个操作符返回一个新的集合,元素是两个结合中不相同的元素
>>> obj1=set([1,2,3,'a'])
>>> obj2=set(['a','b','c',1])
>>> print(obj1^obj2)
{2, 3, 'b', 'c'}
>>>
11、集合之间的关系,返回布尔型结果
11.1 <= 判断一个集合是否为另一个集合的子集
11.2 < 判断一个集合是否为另一个集合的真子集
11.3 >= 判断一个集合是否为另一个集合的超集
11.4 > 判断一个集合是否为另一个集合的真超集
>>> obj1=set([1,2,3])
>>> obj2=set([1,2,3,4])
>>> print(obj1<obj2)
True
>>> print(obj1<=obj2)
True
>>> print(obj2<obj1)
False
>>> print(obj2<=obj1)
False
>>> print(obj2>obj1)
True
>>> print(obj2>=obj1)
True
>>> obj3=set([1,2,3])
>>> print(obj3>=obj1)
True
>>> print(obj3>obj1)
False
>>>
12、获取集合的长度len
>>> obj1=set([1,'a', 3.14, 'the','tom','Tom','Abs'])
>>> print(len(obj1))
7
>>>