集和的定义:
不能包括列表
集合的关系测试操作:
# 定义一列表,名为list_1
list_1 = [1, 2, 3, 4, 5, 1, 2, 3]
# 通过set方法,将数据类型从列表转换为集合的数据类型
set_1 = set(set_1)
# 直接定义一集合,名为set_2
set_2 = {1, 2, 45, 66, 3}
print set_1, type(list_1),type(set_1)
print set_1, set_2
'''
实现集合的关系的第一种方式:set已有方法实现
'''
# 交集
print "交集为:%s" % set_1.intersection(set_2)
#并集
print "并集为:%s" % set_1.union(set_2)
#差集
print "set_1与set_2的差集为:%s" % set_1.difference(set_2)
print "set_2与set_1的差集为:%s" % set_2.difference(set_1)
# 对等差分 //symmetric 对称的,与set_1.difference刚好相反
print "set_1的对等差分:%s " % set_1.symmetric_difference(set_2)
#子集
print "set_1是set_2的子集么? %s" % set_1.issubset(set_2)#父集
print "set_2是set_1的父集么? %s" % set_1.issuperset(set_2)
#Return True if two sets have a null intersection.
print "set_1和set_2是否没有交集? %s" % set_1.isdisjoint(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
集合的增删:
实现集合的增加与删除
'''
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) #显示集合set的长度
print 1 in s #检测某元素是否为集合s的成员,返回布尔值