欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

集合(set)

程序员文章站 2022-07-13 08:42:36
...

集合(set)

  1. 集合的基本概念
集合是多个元素的无序组合
集合类型与数学中的集合概念一致
-集合元素之间无序,每个元素唯一,不存在相同元素
-在python中,集合元素不可更改,不能是可变数据类型,集合中的每个元素,一旦放入集合中,不可修改,可变数据类型元素不可放入集合内
-集合用大括号{}表示,元素间用逗号分隔
-建立集合类型用{}set()
-建立空集合,必须使用set()

集合里面的元素不可重复
集合(set)
定义一个空集合

a = {}
print(type(a)) 	# 默认情况下是字典
b = set([])		# 空集合
print(b,type(b))

集合(set)

  1. 集合的特性----集合只支持成员操作符、for循环(迭代),不支持索引、不支持切片、不支持重复、不支持连接
成员操作符:
a = {1,2,3,'westos'}
print(a,type(a))
print(1 in a)
print('westos' not in a)

for循环(迭代):
a = {1,2,3,'westos'}
for i in a:
    print(i,end=' ')

集合(set)
集合(set)

  1. 集合的添加、删除、排序
集合的添加:
添加单个元素
s = {4,5,6,7,8,9,2}
print(s)
s.add(10)
s.add(0)
print(s)
添加多个元素
s = {4,5,6,7,8,9,2}
print(s)
s.update({3,6,7,8})
print(s)

集合(set)
集合(set)

集合的删除
删除随机元素s.pop()  
s = {5,6,4,7,8,9,}
a = s.pop()  # 弹出第一个
print(a)
print(s)

删除指定元素s.remove()
s = {5,6,4,7,8,9}
s.remove(6)
print(s)

集合(set)
集合(set)

集合的排序
s = {8,6,4,7,5,9}
print(s)
sorted(s)
print(s)
可以看出集合自动排序

集合(set)

  1. 集合的交集、并集、差集、对等差分
交集:
s1 = {8,6,4,7,5,9}
s2 = {6,7,8}
print(s2 & s1)

并集:
s1 = {8,6,4,7,5,9}
s2 = {1,2,3}
print(s1 | s2)

差集:
s1 = {8,6,4,7,5,9}
s2 = {1,2,3}
print(s1 -s2)    #s1中有哪些s2中没有的元素
print(s2-s1)	 #s2中有哪些s1中没有的元素

集合的对等差分:对等差分=并集-交集
s1 = {234}
s2 = {1,2,3}
print(s1 ^ s2)

集合(set)
集合(set)
集合(set)
集合(set)

  1. 集合的判断
子集:
s1 = {2,3,4}
s2 = {1,2,3}
s3 = {1,2,3,4}
print(s1.issubset(s3))	#s1是否是s3的子集
print(s1.issubset(s2))	#s1是否是s2的子集

是否不相交:
s1 = {2,3,4}
s2 = {1,2,3}
s3 = {1,2,3,4}
print(s1.isdisjoint(s2))

集合(set)
集合(set)
练习:
列表快速去掉重复元素
集合(set)

相关标签: Python

上一篇: JS Es6 Array方法

下一篇: ES6 数组