Python学习笔记之集合操作

60 次浏览 7 分钟阅读 0 个喜欢
# 集合操作(交叉并补)
# intersection() 交集
setvar = {'hello','world','python'}
setvar2 = {'张宇童','博客','python'}
res = setvar.intersection(setvar2)
print(res) # {'python'}

# intersection_update()  计算交集本更新到setvar
res = setvar.intersection_update(setvar2) 
print(setvar) # {'python'}

# difference() 差集
setvar1 = {'hello','world','python'}
setvar2 = {'张宇童','博客','python'}
res = setvar1.difference(setvar2)
print(res) # {'world', 'hello'} 是 setvar1 的差集

# difference_update() 计算差集并更新到setvar1
setvar1.difference_update(setvar2)
print(setvar1) # {'world', 'hello'}

# union() 并集
setvar1 = {'hello','world','python'}
setvar2 = {'张宇童','博客','python'}
res = setvar1.union(setvar2)
print(res) # {'python', '张宇童', 'world', 'hello', '博客'}

# update() 并集并更新
setvar1.update(setvar2)
print(setvar1) # {'博客', '张宇童', 'world', 'python', 'hello'}

# symmetric_difference() 去掉两个集合共同部分,剩下数据组成一个集合
setvar1 = {'hello','world','python'}
setvar2 = {'张宇童','博客','python'}
res = setvar1.symmetric_difference(setvar2)
print(res) # {'张宇童', 'world', 'hello', '博客'}

# symmetric_difference_update() 去掉两个集合共同部分,剩下的数据组成一个集合并更新到
setvar1.symmetric_difference_update(setvar2)
print(setvar1) # {'博客', 'hello', 'world', '张宇童'}

# issubset() 判断一个集合是否是另一个集合的自己
setvar1 = {'hello','world','python'}
setvar2 = {'张宇童','博客','python'}
res = setvar1.issubset(setvar2)
print(res) # False

setvar1 = {'hello','world','python'}
setvar2 = {'python'}
res = setvar2.issubset(setvar1)
print(res) # True

# issuperset() 检测一个集合是否是另一个集合的超级
setvar1 = {'hello','world','python'}
setvar2 = {'python'}
res = setvar1.issuperset(setvar2)
print(res) # True

# isdisjoint() 检测两个集合没有相交的部分 
setvar1 = {'hello','world','python'}
setvar2 = {'python'}
res = setvar1.isdisjoint(setvar2)
print(res) # False

# 集合相关函数
# add() 向集合中添加元素
setvar1 = {'张宇童',' - ','前沿技术博客'}
print(setvar1) # {'张宇童', ' - ', '前沿技术博客'}
setvar1.add('原创技术博客')
print(setvar1) # {'张宇童', ' - ', '原创技术博客', '前沿技术博客'}

# pop() 随机删除一个元素
setvar1.pop()
print(setvar1) # {'张宇童', '原创技术博客', ' - '}

# discard() 删除一个指定的值 不存在不删除
setvar1.discard(' - ')
print(setvar1) # {'张宇童', '原创技术博客'}

# remove() 删除集合指定的值 不存在则报错

# clear() 清空集合

# copy() 复制集合
setvar1 = {'hello','world','python'}
print(setvar1)
setvar2 = setvar1.copy()
setvar1.pop()
print(setvar2)