python---集合

一、集合的定义

        在Python中,集合是一种无序可变且不重复的数据结构。集合可以通过大括号{变量}创建,或使用set()函数创建。

        集合中的元素必须是不可变的,不能包含可变对象(如列表或字典)。集合可以支持一些常见的集合操作,如并集、交集等。

        集合定义的第一种方法(缺点不可以使用{}定义):                                                           

# 使用大括号创建集合
my_set = {1, 2, 3, 4, 5}

print(my_set)  # 输出: {1, 2, 3, 4, 5}

s0 = {}
print(s0, type(s0)) # 输出:{} <class 'dict'>

         集合定义的第二种方法:

# 方式二   set()中各异放入可迭代类型(iterable)
s1 = set()
print(s1, type(s1)) # 输出:set() <class 'set'>
s2 = set("hellop")
print(s2, type(s2)) # 输出:{'e', 'l', 'p', 'o', 'h'} <class 'set'>
s3 = set(range(10))
print(s3, type(s3)) # 输出:{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} <class 'set'>

二、集合的常见操作 

1、添加元素:使用add()方法添加单个元素

s0 = {1, 2, 3, 4, 5, 6}s
s0.add(7)
print(s0) # 输出:{1, 2, 3, 4, 5, 6, 7}

 2、移除元素:使用remove()方法移除指定元素,如果不存在会抛出KeyError异常;使用discard()方法移除指定元素,如果不存在不会抛出异常;使用pop()方法任意删除一个,返回删除的元素。

# 随即删除一个元素,有返回值
s4 = {1, 2, 3, 5, 6, 7}
r = s4.pop()
print(s4, r) # 输出:{2, 3, 5, 6, 7} 1

# 指定删除一个指定元素 没有返回值,找不到会报错,没有返回值

print(s4.remove(5)) # 输出:None

# 删除一个元素,不存在不会报错,没有返回值

print(s4.discard(6), s4) # 输出:None {2, 3, 7}

 3、清空集合:使用clear()方法清空集合。

4、并集:使用union()方法。

set1 = {1, 2, 3, 4, 5}
set2 = {3, 4, 5, 6, 7}

# 使用 union() 方法获取两个集合的并集
union_set = set1.union(set2)

# 打印并集结果
print("并集:", union_set) # 输出:{1, 2, 3, 4, 5, 6, 7}

5、交集:使用intersection()方法。

set1 = {1, 2, 3, 4, 5}
set2 = {3, 4, 5, 6, 7}

# 使用 intersection() 方法获取两个集合的交集
intersection_set = set1.intersection(set2)

# 打印交集结果
print("交集:", intersection_set) # 输出:{3, 4, 5}

6、差集:使用difference()方法。

set1 = {1, 2, 3, 4, 5}
set2 = {3, 4, 5, 6, 7}

# 使用 difference() 方法获取 set1 相对于 set2 的差集
difference_set = set1.difference(set2)

# 打印差集结果
print("差集 (集合1 相对于集合2):", difference_set) # 输出:{1, 2}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值