• Python学习(15)——集合


    Python学习(15)——集合

    目标

    • 创建集合
    • 集合数据的特点
    • 集合的常见操作

    一. 创建集合

    创建集合使用{}set(), 但是如果要创建空集合只能使用set(),因为{}用来创建空字典。

    s1 = {10, 20, 30, 40, 50}
    print(s1)
    
    s2 = {10, 30, 20, 10, 30, 40, 30, 50}
    print(s2)
    
    s3 = set('abcdefg')
    print(s3)
    
    s4 = set()
    print(type(s4))  # set
    
    s5 = ()
    print(type(s5))  # input
    
    s6 = {}
    print(type(s6))  # dict
    

    image

    特点:

    1. 集合可以去掉重复数据;
    2. 集合数据是无序的,故不支持下标
    3. 定义空集合只能 set()

    二. 集合常见操作方法

    2.1 增加数据

    • add()
    s1 = {10, 20}
    s1.add(100)
    s1.add(10)
    print(s1)  # {100, 10, 20}
    

    因为集合有去重功能,所以,当向集合内追加的数据是当前集合已有数据的话,则不进行任何操作。

    • update(), 追加的数据是序列。
    s1 = {10, 20}
    # s1.update(100)  # 报错
    s1.update([100, 200])
    s1.update('abc')
    print(s1)
    

    image

    2.2 删除数据

    • remove(),删除集合中的指定数据,如果数据不存在则报错。
    s1 = {10, 20}
    
    s1.remove(10)
    print(s1)
    
    s1.remove(10)  # 报错
    print(s1)
    
    • discard(),删除集合中的指定数据,如果数据不存在也不会报错。
    s1 = {10, 20}
    
    s1.discard(10)
    print(s1)
    
    s1.discard(10)
    print(s1)
    

    image

    • pop(),随机删除集合中的某个数据,并返回这个数据。
    s1 = {10, 20, 30, 40, 50}
    
    del_num = s1.pop()
    print(s1)
    print(del_num)
    print(s1)
    

    image

    2.3 查找数据

    • in:判断数据在集合序列
    • not in:判断数据不在集合序列
    s1 = {10, 20, 30, 40, 50}
    
    print(10 in s1)
    print(10 not in s1)
    

    三. 总结

    • 创建集合

      • 有数据集合
      s1 = {数据1, 数据2, ...}
      
      • 无数据集合
      s1 = set()
      
    • 常见操作

      • 增加数据
        • add()
        • update()
      • 删除数据
        • remove()
        • discard()
  • 相关阅读:
    数据持久化的复习
    iOS: 消息通信中的Notification&KVO
    iOS 证书与签名 解惑详解
    数据持久化 技术比较
    iOS开发拓展篇-XMPP简单介绍
    iOS block并发
    Xcode把应用程序打包成ipa
    谈谈用SQLite和FMDB而不用Core Data
    cannot use the same dataset for report.dataset and page.dataset
    cxGRID中的字段怎么能以0.00的格式显示
  • 原文地址:https://www.cnblogs.com/rouehang/p/14602928.html
Copyright © 2020-2023  润新知