看完就会的常见的python集合问题

集合的定义

在Python中,集合(Set)是一种无序且元素唯一的数据结构。它类似于字典,但是只有键而没有值。集合中的元素必须是不可变的(例如整数、浮点数、元组等),而不能包含可变类型(例如列表、字典等)。在形式上,集合的所有元素都放在一对大括号中,两个相邻元素间使用逗号分隔。 集合最好的应用就是去重,因为集合中的每个元素都是唯一的。

# 集合的创建  使用{}创建
set1 = {1, 2, 3, 4, 5}
print(set1)
# 运行结果是{1, 2, 3, 4, 5}



# 使用set()创建
lists = [1, 2, 3, 4, 5, 6]
set2 = set(lists)
print(set2)
# 运行结果是{1, 2, 3, 4, 5}

集合的键与值

Python中的集合是由唯一的键组成的,没有键值对的概念。每个元素在集合中都是唯一的,重复的元素会被自动去重。


集合的常见操作

添加和删除元素

  • 使用 add() 方法向集合中添加元素。
  • 使用 remove() 方法删除指定元素
set1.add(4)  # 添加4
set2.remove(5)  # 删除5
  • 通过update()方法更新整个元组
x = {"apple", "banana", "cherry"}
y = {"小帅", "小美", "小老弟"}

x.update(y)

print(x)

# 运行结果是{'小老弟', 'cherry', '小美', '小帅', 'apple', 'banana'}
  • 通过update()方法添加序列元素
lists = [1, 2, 3]
set1 = set(lists)
set1.update([4])
print(set1)
# 运行结果是{1, 2, 3, 4}
  •  del 语句删除整个集合
set1 = {1, 2, 3}
del set1
print(set1)
  • 运行结果
  • clear()方法用于清空整个集合
set1 = {1, 2, 3}
set1.clear()
print(set1)
# 运行结果是set()
  • 通过discard()方法丢弃指定的元素
set1 = {1, 2, 3}
set1.discard(2) # discard 英译为: 丢弃
print(set1)
# 运行结果是{1, 3}
  • 通过remove()方法丢弃指定的元素
set1 = {1, 2, 3}
set1.remove(2)  # remove 英译为: 删除
print(set1)
# 运行结果是{1, 3}
  • 通过pop()方法弹出最上面的元素
set1 = {1, 2, 3}
print(setr1.pop())
print(set1)
# 运行结果是{2, 3}

查找集合中的元素

  • 在集合中用in判断数据在集合序列; not in:判断数据不在集合序列。
set1 = {1, 2, 3}
print(1 in set1)
print(4 not in set1)
# 运行结果为True  True

集合的交集、并集和差集数学运算

  • 集合的交集
set1 = {1, 2, 3}
set2 = {1, 2}
print(set1 & set2)
# 运行结果是{1, 2}
  • 集合的并集
set1 = {1, 2, 3}
set2  = {1, 2, 4}
print(set1 | set2)
# 运行结果是{1, 2, 3, 4}
  •  集合的差集
    set1 = {1, 2, 3}
    set2 = {1, 2, 4}
    print(set1 - set2)
    
    # 运行结果是{3}
    

    迭代集合

  • 使用 for 循环遍历集合中的元素
set1 = {1, 2, 3, 4, 5}
for item in set1:
    print(item)
# 运行结果是1, 2, 3, 4, 5

集合在Python中是一个强大且灵活的数据结构,适合于需要快速查找和唯一元素的场景。它提供了丰富的操作方法,可以帮助简化和优化代码的实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值