• 集合


    1、定义

    集合:

    1、不同元素组成

    2、无序

    3、集合中元素必须是不可变类型(字符串、数字、元祖)

    二、函数

    1 .add() #添加元素,只能加一个值

    2 .pop() #随机删除元素

    3 .remove() #删除指定元素,不存在时会报错

    4 .discard() #删除指定元素,不存在时不会报错

    4 .copy() #复制集合

    s = {'kop',1,2,3,3,4,5,6,'qq'}
    print(s)
    s.add('123')
    print(s)
    sn = s.copy()
    print(sn)
    print(s.pop())
    sq = s.remove(4)
    print(s)
    sd = s.discard(45)
    print(s)
    s.clear()
    print(s)

    输出结果:

    {1, 2, 3, 4, 5, 6, 'kop', 'qq'}
    {1, 2, 3, 4, 5, 6, '123', 'kop', 'qq'}
    {1, 2, 3, 4, 5, 6, '123', 'kop', 'qq'}
    1
    {2, 3, 5, 6, '123', 'kop', 'qq'}
    {2, 3, 5, 6, '123', 'kop', 'qq'}
    set()

    .frozenset() #不可变集合,无法增删

    .set() #可变集合

    三、常用关系运算

    1、求交集

    print(a,b) #a,b为集合

    print(a.intersection(b))

    print(a&b)

    2、求并集

    print(a.union(b))

    pring(a|b)

    3、求差集

    print(a-b)

    print(a.difference(b))

    4、交叉补集

    print(a.symmntric_difference(b))

    pring(a^b)

    5、重新给a赋值,用 .update(),前面可加其他函数组合。

    a = a - b #给a重新赋值,赋值为a减去b的差集,如下:

    print(a.difference_update(b))

    print(a.update(b)) #可迭代的都可以

    6、a与b中不含共同的元素

    print(a.isdisjoint(b)) #输出结果是布尔值

    7、b中包含a的所有元素,即a<=b,亦即a是b的子集

    print(a.issubset(b)) #输出结果是布尔值

    8、a中包含b的所有元素,即a>=b,亦即b是a的子集

    print(a.issuperset(b)) #输出结果是布尔值

    四、活用

    去重

    names=['alex','alex','wd']

    names = list(set(names))

    print(names)

  • 相关阅读:
    BICGSTAB不收敛的坑!!
    python中复制的坑
    安装git
    notion快捷键
    PC微信3.60版小程序无法抓包如何解决(fiddler抓包)
    【施工中】双非考研上岸上海985计算机经历分享
    关于CPU个数、核数、线程数的理解
    几个性能问题的记录
    跨域无效问题解决(java后端方案)
    华硕笔记本,固态硬盘、U盘不能识别!
  • 原文地址:https://www.cnblogs.com/lishuangtu/p/8918622.html
Copyright © 2020-2023  润新知