Python学习-集合的常见用法

st = [1,2,3,4,5]
ct = [2,3,4,5,76]
list = set(["name", 'list', 'try'])
list2 = set(["name", 'list', 'try', 'but', 'test'])
# 两个列表去重,利用集合

st = set(st)   #设为集合
ct = set(ct)
print(st, type(st))

sct0 = st.union(ct)  #并集
sct = st | ct   #并集

sct2 = st.intersection(ct) #交集
sct1 = st & ct  #交集

sct3 = st.difference(ct) #差集
sct4 = st - ct   #差集,st中减去ct中的元素


print(sct0)
print(sct)
print(sct1)
print(sct2)

print(sct3)
print(sct4)

print(list.intersection(list2))

#子集
sct_0 = set([2, 3])
print(sct_0.issubset(st))  #判断前者是否为后者的子集
print(sct_0.issuperset(st))#判断前者是否为后者的父集


#对称差集
print(st.symmetric_difference(ct))  # 去掉两者的并集
print(st.copy())

cp_st = st.copy()
print(cp_st)

#添加单个元素
cp_st.add(11)
print(cp_st)
print('%s st list is here' % st) #会发现st中没有变
#添加多个元素,位置是随机的
cp_st.update([11, 22, 'key'])
print(cp_st)

#判断是否交集是空
print(cp_st.isdisjoint(list2))

#去除一个元素
cp_st.remove(11)
print(cp_st)

cp_st.add("str")
print(cp_st)
cp_st.remove('str')
print(cp_st)

cp_st.pop()   #这个算是随机删除
print(cp_st)

cp_st.discard('key')  #指定删除哪一个,最好是数字,但是不是数字也能用。会有提示
print(cp_st)
原文地址:https://www.cnblogs.com/Ian-learning/p/7827852.html