• Python 集合(set)的使用总结


    集合的特点:去重、无序,因此无法通过下标取值。

    1. 定义集合

    s = set() #定义空的集合
    s2 = {'1','2','3'} # 不是key -value形式的话就是集合,不是字典
    s3 ={'1','2','3','5','3'}
    print(s3) #打印出来后会去除重复的值 {'3', '1', '5', '2'}
    ls = [1,2,3,4,5,6,5]
    set(ls) #将list强制转换成集合,可以进行去重
    print(set(ls))
    s4 = 'abcdfegabc'
    set(s4) # set可以进行集合运算
    print(set(s4)) #{'c', 'f', 'b', 'g', 'e', 'a', 'd'}

    2. 操作集合

    增加&删除:

    s3 ={'1','2','3','5'}
    s3.add('1') #向集合中添加值,如果是重复的话还是会把重复的去除,因为集合无序所以输出时各个值的位置不定,可能为 {'2', '3', '1', '5'}
    print(s3)
    s3.remove('1') #删除值
    print(s3) 
    s3.pop()#随机删一个值
    print(s3)

    交集&并集&差集&对称差集:

    s2 = {'1','2','3'}
    s3 ={'1','2','5'}
    #交集
    a = s2.intersection(s3) #取交集, s2.intersection(s3) 与 s3.intersection(s2) 一样
    print(a)  #{'2', '1'}
    b = s2.intersection(s3)
    print(b) #{'2', '1'}
    print(s2 & s3) #取交集 {'2', '1'}
    #并集
    print(s2.union(s3)) #取并集 {'2', '5', '3', '1'}
    print(s2|s3)#取并集 {'2', '5', '3', '1'}
    #差集
    print(s2.difference(s3)) #取s2中存在,s3 不存在的,#取差集 {'3'}
    print(s2 - s3) #取差集 {'3'}
    print(s3 - s2) # {'5'}
    #对称差集,取s2, s3 中不同时存在的元素
    print(s2 ^ s3) # {'3', '5'}

    print(s2.symmetric_difference(s3))#对称差集,就是把两个集合中相同的去掉
  • 相关阅读:
    Netty应用
    原生JDK网络编程- NIO之Reactor模式
    Kafka入门教程
    Java CAS
    Java读写锁
    遍历map的四种方法
    java selector
    Range Sum Query
    Increasing Triplet Subsequence
    Count Numbers with Unique Digits
  • 原文地址:https://www.cnblogs.com/nancyzhu/p/8253743.html
Copyright © 2020-2023  润新知