Python学习20:集合类型(set)

来源:互联网 发布:js 窗口最大化 编辑:程序博客网 时间:2024/06/05 05:26

数学上,将set称为由不同元素组成的集合。

集合的成员通常被称为集合元素(set elements)

集合是一组无需排列的可哈希的值

 

集合有两种不同的类型:

1、可变集合(set)

2、不可变集合(forzenset)

 

集合的创建方式:set()和forzenset()

集合操作符以及关系符:

in               是...的成员

not in         不是...的成员

==              等于

!=              不等于

<               是...的子集

<=             是...的子集

>               是...的超集

>=             是...的超集

&               交集

|                合集

-               差集、相对补集

^              对称差分

#FileName : set.py#集合是无序的,#创建可变集合s = set('Hello World')#输出可变集合print(s)print(len(s))print(type(s))#遍历输出for i in s:    print(i,end = ' ')print('\n')#更新集合,add内建方法,添加的一个元素s.add('aaa')print(s)#使用内建函数update,添加字符窜,分割加入集合s.update('god')print(s)#使用内建函数remove,移除指定元素try:    s.remove('sss')except KeyError as e:    print('元素sss可能不存在集合中',e)print(s)#删除集合del s#尝试打印已经删除的集合try:    print(s)except NameError as e:    print('集合变量可能没有定义%s'%e)    


 

#定义第二个可变集合s2s2 = set('Hello')#判断它们之间的关系if s2 < s:    print('s2是s的子集')if s > s2:    print('s是s2的超集')    #定义第三个可变集合s3s3 = set('jiezHj')#打印s2与s3集合的联合print('"s2"与"s3"的联合为',s2 | s3)#打印s2与s3集合交集print('s2与s3的交集为',s3 & s2)


 

集合类型的内建方法:

 

所有集合:

s.issubset(t):            s是t子集返回True

s.issuperset(t):         s是t的超集返回True

s.union(t):                 s与t联合返回新的可变集合(并集)

s.intersection(t):       返回一个新的集合(交集)

s.defference(t):        返回一个新的集合,成员属于s,但是不属于t

s.symmetric_diffence(t):返回一个新的集合。成员不能是s和t的共有成员

s.copy():                  返回一个新的集合,是s的浅复制

 

可变集合所特有的内建方法:

s.update(t):              用t中的元素修改集合s,修改之后s包含t以及原s 的成员,t可以是字符串

s.intersection_update(t) :s中的成员是s与t的公共部分

s.defference_update(t):s中的成员是s与t的非公有部分

s.add(obj):               在集合中添加对象obj

s.remove(obj):         从集合中移除对象,如果对象不存在将抛出KeyError异常

s.discard(obj):         如果对象obj是集合s中的元素,则删除对象obj

s.pop():                   删除集合中的任意对象

s.clear():                 清空集合 

 

 

 

 

 

0 0
原创粉丝点击