####################################集合###########################
1,集合的应用情况;
集合是一个无序的,不重复的数据组合。
集合可去除列表中重复的元素。
集合有其他数据类型没有的属性,即关系测试,包含交集、差集、并集、是否为子集、是否为父集等方法。
2,集合的关系测试:
# 交集
交集为:set_1.intersection(set_2)
#并集
并集为: set_1.union(set_2)
#差集
set_1与set_2的差集为:set_1.difference(set_2)
set_2与set_1的差集为:set_2.difference(set_1)
# 对等差分 //symmetric
对称的,与set_1.difference刚好相反
set_1的对等差分:set_1.symmetric_difference(set_2)
#子集
set_1是set_2的子集么?
set_1.issubset(set_2)#父集
set_2是set_1的父集么?
set_1.issuperset(set_2)
******数学符号:
实现集合的关系的第二种方式:数学符号实现
'''
# 交集
print set_1 & set_2
#并集
print set_1 | set_2
#差集
print set_1 - set_2
print set_2 - set_1
# 对等差分
print set_1 ^ set_2
示例:
1)##定义一列表,名为list1
list1 = [1,2,3,4,1,2,3]
s1 = set(list1) ----->通过set方法,将数据类型从列表转换为集合的数据类型
print s1
s2 = {1,2,100,'hello'}
print s1.union(s2)
####s1的并集
print s1.intersection(s2)
####s1与s2的交集
s2.intersection_update(s1)
####s2与s1的交集更新
print s1
print s2
结果如图一:
集合的增删
s = {1,2,3}
###集合的添加
s.add(1)
##在集合中添加一项
s.update([1,3,4])
##在集合中添加多项,参数应该是可迭代类型
print s
集合的删除
s.remove(1)
s.discard(1)
s.pop()
s.clear()
##清空集合的所有元素
集合的其他操作
print len(s)
print 1 in s
s.copy()
如图二: