美文网首页
010-集合

010-集合

作者: 小D修行笔记 | 来源:发表于2022-07-29 06:16 被阅读0次

    \color{red}{创建集合、集合的特点、增加(add、update)、删除(remove、discard、pop)、判断(in、not in)}

    创建集合

    # 创建空集合
    s1 = set()
    # 创建非空集合
    s2 = {数据1, 数据2,数据3,……}

    # 创建空集合
    s1 = set()
    print(s1)
    
    # 创建非空集合
    s1 = {10, 20, 30, 40, 50}
    print(s1)
    s1 = set("abcd")
    print(s1)
    

    输出结果

    set()
    {40, 10, 50, 20, 30}
    {'c', 'a', 'd', 'b'}
    

    集合的特点:去重,无序

    • 集合中的元素没有重复的
    • 集合中的元素没有固定顺序

    去重

    # 集合去重
    s1 = {10, 20, 30, 40, 20, 30}
    print(s1)
    

    输出结果

    {40, 10, 20, 30}
    

    无序

    # 集合无序
    s1 = {10, 20, 30, 40, 50}
    print(s1)  # 输出的顺序不固定
    

    输出结果

    {40, 10, 50, 20, 30}
    

    add() 增加单一数据

    集合序列.add(数据)

    # add()
    s1 = {10, 20}
    s1.add(10)
    print(s1)  # 追加数据是已有数据,因为集合有去重特性,所以集合不变
    s1.add(30)
    print(s1)
    

    输出结果

    {10, 20}
    {10, 20, 30}
    
    • add追加数据序列报错

    update() 增加数据序列

    集合序列.update(数据序列)

    # update()
    s1 = {10, 20}
    s1.update([30, 40, 50])
    print(s1)
    

    输出结果

    {40, 10, 50, 20, 30}
    
    • update追加单一数据报错

    remove() 删除数据

    集合序列.remove(数据)

    • 删除集合中的指定数据,如果数据不存在,报错

    删除指定数据,数据存在

    # remove()
    s1 = {10, 20}
    s1.remove(10)
    print(s1)
    

    输出结果

    {20}
    

    删除指定数据,数据不存在

    s1 = {10, 20}
    s1.remove(30)
    print(s1)
    

    输出结果

    Traceback (most recent call last):
      File "/Users/apple/Desktop/code/015-集合.py", line 37, in <module>
        s1.remove(30)
    KeyError: 30
    

    dicard()删除数据

    集合序列.dicard(数据)

    • 删除集合中指定的数据,数据不存在,不报错
    # 数据存在
    s1 = {10, 20}
    s1.discard(10)
    print(s1)
    
    # 数据不存在
    s1 = {10, 20}
    s1.discard(30)
    print(s1)
    

    输出结果

    {20}
    {10, 20}
    

    pop() 随机删除一个数据,并返回这个数据

    集合序列.pop()

    • 随机删除一个数据
    • 返回被删除的数据
    # pop()
    s1 = {10, 20, 30, 40, 50}
    num1 = s1.pop()
    print(num1)
    print(s1)
    

    输出结果

    40
    {10, 50, 20, 30}
    

    in、not in 判断指定数据是否在集合中

    • in:判断指定数据是否在集合中
    • not in:判断指定数据是否不再集合中
    # in、not in
    s1 = {10, 20, 30, 40, 50}
    print(10 in s1)
    print(10 not in s1)
    

    输出结果

    True
    False
    

    相关文章

      网友评论

          本文标题:010-集合

          本文链接:https://www.haomeiwen.com/subject/rgxgirtx.html