Python之集合(基础)

1.集合的定义

集合是无序的数据类型,添加顺序和在集合中存储的顺序是不一定相同的

(1).集合里面的元素是不可重复的

# 定义集合
s = {1,2,3,1,4,3,5}
print(s)
# type:数据类型 (set表示集合)
print(type(s))

在这里插入图片描述
(2).定义只有一个元素的集合(不同于元组:无需加,)

s1 = {1}
print(s1)
print(type(s1))

(3).定义一个空集合

s3 = set([])
print(s3)
print(type(s3))

在这里插入图片描述
(4).集合的应用(去重)

# 定义列表
li = [1,2,3,1,2,3]
print(li)
# 先强制转换为集合类型,再强制转换为列表类型;
# 目的在于:去掉重复元素
print(list(set(li)))

在这里插入图片描述
2.集合的特性

集合只支持成员操作符和for循环遍历

(1).成员操作符

s = {1,2,3}
print(1 in s)
print(5 in s)

在这里插入图片描述
(2).for循环遍历(迭代)

s = {1,2,3}
for i in s:
    print(i,end='|')

在这里插入图片描述

# enumerate:枚举
for i,v in enumerate(s):
    print('index: %s,value: %s' %(i,v))

在这里插入图片描述
3.集合的常用方法

(1)add增加一个元素

s = {6,7,8,9}
# add:增加一个元素
s.add(1)
print(s)

在这里插入图片描述
(2)update增加多个元素

s = {6,7,8,9}
# update:增加多个元素
s.update({5,2,0})
print(s)

在这里插入图片描述
(3) pop删除第一个元素

s = {6,7,8,9}
print(s)
# pop:删除第一个元素
s.pop()
print(s)

在这里插入图片描述
(4) remove删除指定元素

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

在这里插入图片描述
(5)并集的两种方式

s1 = {1,2,3}
s2 = {2,3,4}
print('并集:',s1.union(s2))
print('并集:',s1|s2)

在这里插入图片描述
(6)交集的两种方式

s1 = {1,2,3}
s2 = {2,3,4}
print('交集:',s1.intersection(s2))
print('交集:',s1&s2)

在这里插入图片描述
(7)差集

s1 = {1,2,3}
s2 = {2,3,4}
print('差集:',s1.difference(s2))      # s1-(s1&s2)
print('差集:',s2.difference(s1))      # s2-(s1&s2)

在这里插入图片描述
(8)对等差分的两种方式 (并集-交集)

s1 = {1,2,3}
s2 = {2,3,4}
print('对等差分:',s2.symmetric_difference(s1))
print('对等差分:',s1^s2)

在这里插入图片描述
(9) 判断s3是否为s4的超集

超集:如果s3中的每一个元素都在集合s4中,且s4中可能包含s3中没有的元素, 那么s4就是s3的一个超集
s3 = {1,2}
s4 = {1,2,3}
print(s3.issuperset(s4))
print(s4.issuperset(s3))

在这里插入图片描述
(10) 判断s3是否为s4的子集

s3 = {1,2}
s4 = {1,2,3}
print(s3.issubset(s4))
print(s4.issubset(s3))

在这里插入图片描述
(11) 判断两个集和是不是不相交

s3 = {1,2}
s4 = {1,2,3}
print(s3.isdisjoint(s4))

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值