python基础知识之集合

site的重要作用

1.去重

2.关系测试

set()转换成一个集合,是没有顺序的,并且不重复的

__author__ = "Alex Li"
#集合不可能有重复的,自动去重,而且没有顺序
#
list_1 = [1,4,5,7,3,6,7,9]
list_1 = set(list_1)

list_2 =set([2,6,0,66,22,8,4])
print(list_1,list_2)
'''
#交集
print(  list_1.intersection(list_2) )

#并集
print(list_1.union(list_2))

#差集 in list_1 but not in list_2
print(list_1.difference(list_2))
print(list_2.difference(list_1))

#子集
list_3 = set([1,3,7])
print(list_3.issubset(list_1))
print(list_1.issuperset(list_3))




#对称差集
print(list_1.symmetric_difference(list_2))


print("-------------")

list_4 = set([5,6,7,8])
print(list_3.isdisjoint(list_4)) # Return True if two sets have a null intersection.
'''


#交集
print(list_1 & list_2)
#union
print(list_2 | list_1)

#difference
print(list_1 - list_2) # in list 1 but not in list 2

#对称差集
print(list_1 ^ list_2)

list_1.add(999)
list_1.update([888,777,555])
print(list_1)

print(list_1.pop())
print(list_1.pop())
print(list_1.pop())
print(list_1.pop())

print(  list_1.discard(888)  )

list_1.add(8888)#添加一项
list_1.update(['wode','nide',5555])#添加多项

print(list_1)
'''通解
len(s)#判断s的长度
X in s#判断x是不是在s中
x not in s#判断x是不是不在s中
s.issubset(t)#判断s是不是t的子集
s.issuperset(t)#判断t是不是s的子集
s.union(t)# 相当于s | t 并集
s.intersection(t)# 相当于s & t 交集
s.difference(t)#相当于 s -t 差集,s中有的但是t中没有的
s.symmetric_difference(t)#相当于 s ^ t 对称差集,返回新的set其中没有他们重复的值
s.copy()#返回s的一个浅复制
.pop()#随机删除一个,并将删除的元素返回
.remove()#指定删除一个,如果不存在则会报错
.discard()#指定删除一个,如果不存也不会报错,会返回不存在none
'''

 

原文地址:https://www.cnblogs.com/home979/p/7835080.html