• Python中关于集合的介绍及用法


    一、集合的含义及创建方法

    集合(set)是一种无序的并且里面存放不同元素的序列。

    集合可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

    创建  集合a   集合b

    a={1,2,3,4,5,6}

    b={4,5,6,7,8,9}

    二、集合的日常操作方法

    1.列表去掉重复的元素

    创建一个列表c

    c=[1,2,3,1,2]

    print(set(a))

    结果:

    {1, 2, 3}

    2.添加元素

    (1)add方法

    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    a.add("abc")
    print(a)
    结果:
    {1, 2, 3, 4, 5, 6, 'abc'}

    (2)update方法
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    a.update("abc")
    print(a)
    结果:
    {1, 2, 3, 4, 5, 6, 'c', 'b', 'a'}
    小结:add是单个元素的添加,update是添加一个序列

    3.删除元素
    (1)discard方法
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    a.discard(5)
    print(a)
    结果:
    {1, 2, 3, 4, 6}
    (2)remove方法
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    a.remove(5)
    print(a)
    结果:
    {1, 2, 3, 4, 6}

    (3)pop方法
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    a.pop()
    print(a)
    结果:
    随机删除一个a里面的元素

    总结:remove和discard都可以删除指定元素,区别是如果删除的元素不存在,remove会报错,discard不报错。

    4.清空 clear
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    a.clear()
    print(a)
    结果:
    set()
    5.统计集合元素个数 len
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(len(a))
    结果:
    6

    三、集合间的关系

    1.a集合与b集合的交集
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    e=a.intersection(b)
    print(e)
    或者是
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a & b)
    结果都是
    {4, 5, 6}

    2.a集合与b集合的并集
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a.union(b))
    或者是
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a | b)
    结果都是
    {1, 2, 3, 4, 5, 6, 7, 8, 9}

    3.a集合与b集合的对称差集(去掉交集后的元素)
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a.symmetric_difference(b))
    或者是
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a ^ b)
    结果都是
    {1, 2, 3, 7, 8, 9}

    4.判断a是不是b的子集 a<b
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a.issubset(b))
    结果:
    false

    5.判断a是不是b的父集 a>b
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a.issuperset(b))
    结果:
    false

    6.差集
    (1)a-b
    #在a里不在b集合里的元素
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(a.difference(b))
    结果:
    {1, 2, 3}
    (2)b-a
    #在b里不在a集合里的元素
    a={1,2,3,4,5,6}
    b={4,5,6,7,8,9}
    print(b.difference(a))
    结果:
    {8, 9, 7}

  • 相关阅读:
    [c++]在类中定义常量的几个做法
    VC6中使用高版本系统API的方法
    Delphi编程中实现窗口分割
    Win32 SDK窗口程序代码(含详细注释)
    [c++]在C++中定义常量的两种方法的比较
    VC6里的_WIN32_WINNT宏
    [VC]自己实现TRACE功能
    [delphi]保证程序只运行一个实例
    转载:C# 设置文件夹权限(代码简单)
    VC:动态链接库
  • 原文地址:https://www.cnblogs.com/bianhao89757/p/10239127.html
Copyright © 2020-2023  润新知