• 4-7 集合


    1、集合天生可以去重

    1 # 集合天生就可以去重
    2 l = [1,2,2,1,4,5]
    3 lset = set(l)
    4 print(lset)  # {1, 2, 4, 5}

    2、交集

    1 # 集合是无序的
    2 stus1 = {'胡绍燕','王义','王新','马春波','高文平'}
    3 stus2 = {'乔美玲','胡绍燕','王义','王新','马春波',"王一铭"}
    4 
    5 #交集
    6 res = stus1.intersection(stus2)  # 都有的
    7 res2 = stus1 & stus2
    8 print(res)  # {'王义', '王新', '马春波', '胡绍燕'}
    9 print(res2)  # {'王义', '王新', '马春波', '胡绍燕'}

    3、并集(去重)

    1 stus1 = {'胡绍燕','王义','王新','马春波','高文平'}
    2 stus2 = {'乔美玲','胡绍燕','王义','王新','马春波',"王一铭"}
    3 
    4 #并集 把2个集合合并到一起,然后去除重复
    5 res = stus1.union(stus2)
    6 res2 = stus1 | stus2
    7 # {'胡绍燕', '王义', '高文平', '乔美玲', '马春波', '王新', '王一铭'}
    8 print(res)
    9 print(res2)

    4、差集,前面一个有,后面一个没有的

     1 stus1 = {'胡绍燕','王义','王新','马春波','高文平'}
     2 stus2 = {'乔美玲','胡绍燕','王义','王新','马春波',"王一铭"}
     3 
     4 #差集 前面一个有,后面一个没有的
     5 res = stus1 - stus2
     6 res2 = stus1.difference(stus2)
     7 res3 = stus2.difference(stus1)
     8 print(res)  # {'高文平'}
     9 print(res3)  # {'乔美玲', '王一铭'}
    10 print(res2)  # {'高文平'}

    5、对称差集,只在一个集合中存在的

    1 stus1 = {'胡绍燕','王义','王新','马春波','高文平'}
    2 stus2 = {'乔美玲','胡绍燕','王义','王新','马春波',"王一铭"}
    3 
    4 #对称差集 只在一个集合里面出现过的,都给你整出来
    5 res = stus1.symmetric_difference(stus2)
    6 res2 = stus1 ^ stus2
    7 # {'高文平', '乔美玲', '王一铭'}
    8 print(res)
    9 print(res2)

    6、集合的操作(增删该查)

     1 stus1 = {'胡绍燕','王义','王新','马春波','高文平'}
     2 stus2 = {'乔美玲','胡绍燕','王义','王新','马春波',"王一铭"}
     3 
     4 # stus1.add('小明') #增加元素
     5 print(stus1)  # {'王新', '高文平', '王义', '马春波', '胡绍燕', '小明'}
     6 
     7 # stus1.pop()  # 随机删除一个元素
     8 # print(stus1)  # {'马春波', '高文平', '王义', '王新'}
     9 
    10 stus1.remove('王义') #删除指定的元素
    11 print(stus1)  # {'高文平', '马春波', '胡绍燕', '王新'}

    7、集合的循环取值

    1 stus1 = {'胡绍燕','王义','王新','马春波','高文平'}
    2 for s in stus1:
    3     print(s)  # 集合是无序的,每次取集合里面的一个值
  • 相关阅读:
    HDU 3835 R(N)
    HDU 2498 Digits
    HUST 1027 Enemy Target!
    【POJ 3714】 Raid
    【POJ 2965】 The Pilots Brothers' refrigerator
    【POJ 2054】 Color a Tree
    【POJ 1328】 Radar Installation
    【POJ 3190】 Stall Reservations
    【POJ 3614】 Sunscreen
    【BZOJ 3032】 七夕祭
  • 原文地址:https://www.cnblogs.com/hushaoyan/p/10035799.html
Copyright © 2020-2023  润新知