• python3基础-set


    集合:无序的,不重复的数据组合

    作用:

      1、去重,把一个列表变成集合,就自动去重了

      2、关系测试,测试两组数据之前的交集、差集、并集等关系

    set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key

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

    创建格式:

    s1 = {v01,v02,...}
    或者
    set(value)
    去重:
    list_1 = [1,3,4,7,3,6,7,9]
    list_1 = set(list_1)
    list_2 = set([2,6,0,66,22,8,4])
    list_3 = set([1,3,7])
    print(list_1)
    print(list_2)
    print(list_3)
    print("---------------------------")
    #关系测试
    #交集(两个列表里面都有的值,这里是4、6):
    print(list_1.intersection(list_2))
    print(list_1 & list_2)
    #并集(把两个列别合并起来,然后去重):
    print(list_1.union(list_2))
    print(list_1 | list_2)
    #差集(把list_1里面有的而list_2里面没有的取出来):
    print(list_1.difference(list_2))
    print(list_1 - list_2)
    #对称差集(两个列表里面,互相没有的取出来,也就是只去掉那些互相都有的值)
    print(list_1.symmetric_difference(list_2))
    print(list_1 ^ list_2)
    #子集(判断list_1是否包含了list_3里面的所有值)
    print(list_3.issubset(list_1))
    print(list_3 <= list_1)
    #父集(判断list_1是否为list_3的父集)
    print(list_1.issuperset(list_3))
    print(list_1 >= list_3)
    #无交集(判断list_3和list_4是否完全没有任何交集)
    list_4 = set([5,6,8])
    print(list_3.isdisjoint(list_4))

    基本操作:

    s1.add('x') # 添加一项

    s1.update([10,37,42]) # 在s中添加多项


    使用remove()可以删除一项:

    s1.remove('H') #有就删除,没有就报错
    s2.pop() #随机弹出一个
    s3.discard('H') #有就删除,没有也不会报错

    len(s)
    set 的长度

    x in s
    测试 x 是否是 s 的成员

    x not in s
    测试 x 是否不是 s 的成员


    o(=•ェ•=)m纸上得来终觉浅,绝知此事要躬行o(=•ェ•=)m
  • 相关阅读:
    mysql中json_extract函数的使用?作用是什么?
    python 里面的单下划线与双下划线的区别(私有和保护)
    理解Python的双下划线命名
    python list中append()与extend()用法
    sqlalchemy(二)高级用法 2
    查看python对象的属性
    python map()
    SpringMVC学习系列(3) 之 URL请求到Action的映射规则
    SpringMVC学习系列(2) 之 经典的HelloWorld实现
    SpringMVC学习系列(1) 之 初识SpringMVC
  • 原文地址:https://www.cnblogs.com/occl/p/9883979.html
Copyright © 2020-2023  润新知