Python3中的集合(Set)

时间:2020-07-15
本文章向大家介绍Python3中的集合(Set),主要包括Python3中的集合(Set)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

【1】集合 set 的基本运算

集合中的元素是不重复的
集合是有默认展现方式,但实际上是无序的

【1.1】把其他类型转换成集合 set(object)

list_1 = [1,4,5,7,3,6,7,9]
set_1=set(list_1)
print(set_1,type(set_1))

a = set('abracadabra')
print(a)
{1, 3, 4, 5, 6, 7, 9} <class 'set'>
{'c', 'd', 'b', 'a', 'r'}

【1.2】集合的交集(&)、并集(|)、差集(-)、对称差集(^)

list_1={1,3,5,7,9}
list_2={2,4,5,8,10}

print('----------- 使用方法操作 ---------------')
#交集
print(list_1.intersection(list_2))
#并集
print(list_1.union(list_2))
#差集
print(list_1.difference(list_2))
#对称差集,去掉了交集部分
print(list_1.symmetric_difference(list_2))

print('----------- 使用运算符操作 ---------------')

#交集
print(list_1 & list_2)
#并集
print(list_1 | list_2)
#差集
print(list_1 - list_2)
#对称差集
print(list_1 ^ list_2)

print('----------- 子集交集等判断 ---------------')
#子集的判断,是子集则为 True
print(list_1.issubset(list_2))
#父集的判断,是父集则为 True
print(list_1.issubset(list_2))
#交集的判断,如果没有交集则为True
print(list_1.isdisjoint(list_2))

----------- 使用方法操作 ---------------
{5}
{1, 2, 3, 4, 5, 7, 8, 9, 10}
{1, 3, 9, 7}
{1, 2, 3, 4, 7, 8, 9, 10}
----------- 使用运算符操作 ---------------
{5}
{1, 2, 3, 4, 5, 7, 8, 9, 10}
{1, 3, 9, 7}
{1, 2, 3, 4, 7, 8, 9, 10}
----------- 子集交集等判断 ---------------
False
False
False

【1.3】集合的增(add,update)删(remove,pop,discard)

list1={1,2,3,4,5}
#添加一项
list1.add(999)
print(list1)

#添加多项
list1.update([111,222,333])
print(list1)

#删除 remove 删不存在则报错
list1.remove(999)
print(list1)

#pop按照默认排列顺序从最前面删
list1.pop()
list1.pop()
list1.pop()
print(list1)
list1.pop()
list1.pop()
list1.pop()
print(list1)

#discard 删除,删除不存在元素不会报错
list1.discard(111)
print(list1)
{1, 2, 3, 4, 5, 999}
{1, 2, 3, 4, 5, 999, 333, 111, 222}
{1, 2, 3, 4, 5, 333, 111, 222}
{4, 5, 333, 111, 222}
{111, 222}
{222}

【1.4】元素是否在集合中

list1={1,2,3,4,5}
#判断某个元素是否在集合中
print(1 in list1)
print(5 not in list1)
True
False




原文地址:https://www.cnblogs.com/gered/p/13308460.html