24-python基础-python3-浅拷贝与深拷贝(2)
发布时间:2020-12-20 11:01:13 所属栏目:Python 来源:网络整理
导读:sets 支持 x in set,len(set),和 for x in set。 作为一个无序的集合, sets不记录元素位置或者插入点 。因此, sets不支持 indexing,slicing,或其它类序列(sequence-like)的操作 。 1-简单的小例子 x = set( ‘ spam ‘ ) y = set([ ‘ h ‘ , ‘ a ‘ ,
sets 支持 x in set,len(set),和 for x in set。
>>> x = set(‘spam‘) >>> y = set([‘h‘,‘a‘,‘m‘]) >>> x,y (set([‘a‘,‘p‘,‘s‘,‘m‘]),set([‘a‘,‘h‘,‘m‘])) 2-小应用
>>> x & y # 交集 set([‘a‘,‘m‘]) >>> x | y # 并集 set([‘a‘,‘m‘]) >>> x - y # 差集 set([‘p‘,‘s‘]) 3-去除海量列表里重复元素 >>> a = [11,22,33,44,11,22] >>> b = set(a) >>> b set([33,22]) >>> c = [i for i in b] >>> c [33,22]
s = set([3,5,9,10]) #创建一个数值集合 t = set("Hello") #创建一个唯一字符的集合 t set([‘H‘,‘e‘,‘l‘,‘o‘]) 与列表和元组不同,集合是无序的,也无法通过数字进行索引。此外,集合中的元素不能重复。例如,如果检查前面代码中t集合的值,结果会是:
注意只出现了一个‘l‘。
5-集合支持一系列标准操作,包括并集、交集、差集和对称差集,例如:
a = t | s # t 和 s的并集 b = t & s # t 和 s的交集 c = t – s # 求差集(项在t中,但不在s中) d = t ^ s # 对称差集(项在t或s中,但不会同时出现在二者中)
t.add(‘x‘) # 添加一项 s.update([10,37,42]) # 在s中添加多项 t.remove(‘H‘) # 使用remove()可以删除一项 len(s) #返回set的长度 x is s # 测试x是否是s的成员 x not in s # 测试x是否不是s的成员
s.issubset(t) # 测试是否 s 中的每一个元素都在 t 中 s <= t s.issuperset(t) # 测试是否 t 中的每一个元素都在 s 中 s >= t (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |