Python 的内置函数 set

Python 内建函数列表 > Python 的内置函数 set

Python 的内置函数 set() 是一个非常有用的数据结构,用于创建无序且不包含重复元素的集合。它提供了高效的成员检测和元素去重功能,是处理集合运算的理想选择。

基本用法

  1. 创建集合

    # 使用花括号
    fruits = {'apple', 'banana', 'orange'}
    
    # 使用set()函数
    numbers = set([1, 2, 3, 2, 1])  # 结果为{1, 2, 3}
    
  2. 空集合创建

    empty_set = set()  # 注意:不能使用{},这会创建字典
    

主要特性

  • 无序性:集合中的元素没有固定顺序
  • 唯一性:自动去除重复元素
  • 可变性:可以添加/删除元素
  • 可迭代性:可以使用for循环遍历

常用操作

  1. 添加元素

    s = {1, 2}
    s.add(3)  # {1, 2, 3}
    s.update([4, 5])  # {1, 2, 3, 4, 5}
    
  2. 删除元素

    s.remove(2)  # 如果元素不存在会报错
    s.discard(2)  # 元素不存在不会报错
    s.pop()  # 随机删除并返回一个元素
    
  3. 集合运算

    a = {1, 2, 3}
    b = {2, 3, 4}
    
    # 并集
    a.union(b)  # {1, 2, 3, 4}
    
    # 交集
    a.intersection(b)  # {2, 3}
    
    # 差集
    a.difference(b)  # {1}
    
    # 对称差集
    a.symmetric_difference(b)  # {1, 4}
    

应用场景

  1. 数据去重

    lst = [1, 2, 2, 3, 3, 3]
    unique = set(lst)  # {1, 2, 3}
    
  2. 快速成员检测

    if user_input in valid_options:
        # 比列表检测更高效
    
  3. 关系运算

    # 检查两个用户的好友列表是否有交集
    common_friends = user1_friends & user2_friends
    

注意事项

  • 集合只能包含可哈希(不可变)对象
  • 不能通过索引访问元素
  • 冻结集合(frozenset)是集合的不可变版本
  • 集合在Python 3.7+中会保留插入顺序,但不应该依赖这个特性

集合是Python中处理唯一值集合的高效工具,合理使用可以显著提升代码性能和简洁性。Python 的内置函数 set

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值