zoukankan      html  css  js  c++  java
  • python学习笔记之集合

    集合是一个无序的,不重复的数据组合,它的主要作用如下:

    • 去重,把一个列表变成集合,就自动去重了
    • 关系测试,测试两组数据之前的交集、差集、并集等关系

    常用操作

    list_1 = [1,4,5,7,8,7,9]
    list_1 = set(list_1)
    list_2 = set([2,5,8,10])
    print(list_1)#{1, 4, 5, 7, 8, 9}
    print(list_2)#{8, 2, 10, 5}
    #交集
    print(list_1.intersection(list_2))#{8, 5}返回一个新的 set 包含 list_2list_1 中的公共元素
    print(list_1&list_2)
    #并集
    print(list_1.union(list_2))#{1, 2, 4, 5, 7, 8, 9, 10}返回一个新的 set 包含 list_2 和 list_1 中
    的每一个元素
    print(list_1|list_2)
    #差集 in list_1 but not in list_2
    print(list_1.difference(list_2))#{1, 4, 9, 7}
    print(list_2.difference(list_1))#{2, 10}返回一个新的 set 包含 list_2 中有但是list_1中没有的元素
    print(list_1-list_2)#{1, 4, 9, 7}

    #子集
    list_3 = set([5,8])
    print(list_3.issubset(list_2))#True list_3是否为list_2的子集
    print(list_2.issuperset(list_3))#True
    #对称差集
    print(list_3.symmetric_difference(list_2))#{2, 10}返回一个新的 set 包含 list_2list_3 中不重复的元素
    print(list_3 ^ list_2)
    #添加
    list_2.add(9)
    print(list_2)#{2, 5, 8, 9, 10}
    list_2.update([999,33,11])#{33, 2, 5, 999, 8, 9, 10, 11},在list_2中新增多项
    print(len(list_2))#8 长度
    print(list_2)#{33, 2, 5, 999, 8, 9, 10, 11}
    print(list_2.pop())#33
    #remove 如果集合里面没有元素,remove会报错KeyError: 'ddd'
    print(list_2.remove("ddd"))
    #discard 如果集合里面没有元素,不会报错,会返回None
    print(list_2.discard(33))
    print('ddd' in list_2)#ddd是否在集合list_2中
     
  • 相关阅读:
    软考收获
    寻找她(指令寻址)——(软考六)
    算法探究——(软考四)
    Shell排序——软考(五)
    Java String类源码
    Java 抽象类详解
    Spring IOC Container
    Tomcat的架构
    Spring与Web框架(例如Spring MVC)漫谈——关于Spring对于多个Web框架的支持
    HTML form表单中action的正确写法
  • 原文地址:https://www.cnblogs.com/fenny0907/p/7405321.html
Copyright © 2011-2022 走看看