处理目标集合的方法?
集合是唯一对象的无序组合。这意味着它不是列表之类的顺序的对象,不能包含相同 的元素。在没有顺序要求的情况下,集合是删除重复、计算交集、并集以及两个或以上对象组之间差异的理想数据结构。集合不支持索引和切片操作,但'in'和 'not in'运算符可以用来测试一个元素是否在集合中。
创建集合
要创建集合,可使用方法set(x) ,其中x是一个类序列的对象(即字符串、元组或列表)。
>>> set ('MGSNKSKPKDASQ')
set (['A','D','G','K','M','N','Q','P','S'])
>>> set ((1,2,3,4 ))
set([1,2,3,4])
>>> set ([1,2,3,'a','b','c'])
set (['a',1,2,3,'c','b'])
即使输入文件中的元素顺序不同,所产生的集合中的元素也会完全相同。 集合中的元素必须是不可变对象,如数字、字符串或元组,因而列表、字典或其他集合不能作为集合的元素。
由于集合是唯一元素的组合,创建集合时多余的元素会被自动删除,如下所示 :
>>> id_list = ['P04637','P02340','P10361 ','Q29537',' P04637','P10361 ',' P10361']
>>> id_set = set(id_list)
>>>id_set
set (['Q29537','P10361','P04637'])
这是一种非常简洁的寻找唯一标识符的方式。
集合的方法
方法 add()可用于将一个元素添加到集合,如果所添加的元素已存在于该集合中,add() 就不起任何作用。方法 update()用于将几个元素添加到集合,除非它们在集合中己存在。 pop() 、remove()和 discard()可以将元素从集合中去除。
>>>s1 = set ([1,2,3,4,5])
> >>s1.add (10)
>>>s1
set([1,2,3,4,5,10])
>>>s1.update ( ['a','b','c'] )
>>>s1
set (['a',1,2,3,4,5,10,'c','b'])
检查集合成员
运算符in可以检查元素是否包含在集合中。
>>>5 in s1
True
>>>6 in s1
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有