python中的集合和数学红集合的概念一致。

Python中的集合是一个无序的不重复元素序列。

集合中只能存储不可变数据类型。

在Python中集合使用{}定义。

与列表,字典一样,都是Python中的可变数据类型。

集合的创建方式有两种

1)使用{}直接创建集合

语法结构:

s={element1,element2,...elementN}

2)使用内置函数set()创建集合

语法结构:

s=set(可迭代对象)

集合的删除

语法结构:

del 集合名
s={10,20,30,40}
print(s)

s=set()  #创建空集合
print(s)
s={}   #创建的是字典
print(s,type(s))

s=set('helloworld')
print(s)
s=set([10,20,30,40])
print(s)
s=set(range(1,10))
print(s)

print('集合最大值',max(s))
print('集合最小值',min(s))
print('集合长度',len(s))

print('8在集合中?',8 in s)
print('8不在集合中?', 8 not in s)

del s # 删除集合

集合类型的操作符

交集(A&B):两个集合共有部分

并集(A|B):两个集合合并在一起,重复元素都只保留一个。

差集(A-B):A的集合除去A中含有B中的元素之后的元素集合。

补集(A^B):并集去除掉交集之后剩余的部分

s1={10,20,30,40}
s2={30,40,50,60}
print('交集',s1&s2) #交集:两个集合共有部分  {40, 30}
print('并集',s1|s2) #并集:两个集合合并在一起,重复的元素都只保留一个 {40, 10, 50, 20, 60, 30}
print('差集',s1-s2) #差集:一个集合去除两个集合中共有部分的剩余部分 {10, 20}
print('补集',s1^s2) #补集:并集去除掉交集之后,剩余的部分 {10, 50, 20, 60}

集合的相关操作方法

集合的方法 描述说明
s.add(x) 如果x不存在集合s中,则将x添加到集合s中
s.remove(x) 如果x在集合中,则删除元素;如果不在集合中,则程序报错
s.clear() 清空集合中的所有元素

 

 

 

 

s={10,20,30}
print(s)
s.add('hello')
print(s)
s.remove(20)
print(s)
s.clear()
print(s)

集合的遍历

#for 循环
for item in s:
    print(item)
# 使用enumerate()函数
for index,item in enumerate(s):
    print(index,item)

集合的生成式

#第一种方式
s={i for i in range(1,10)}
print(s)
#第二种方式
s={i for i in range(1,10) if i%2==1}
print(s)

列表,元组,字典,集合的区别

数据类型 序列类型 元素是否可重复 是否有序 定义符号
列表list 可变序列 可重复 有序 []
元组tuple 不可变序列 可重复 有序 ()
字典dict 可变序列 key不可重复,value可重复 无序 {key:value}
集合set 可变序列 不可重复 无序 {}
 posted on 2023-12-14 21:55  会飞的金鱼  阅读(29)  评论(0)    收藏  举报