zoukankan      html  css  js  c++  java
  • python集合的操作

    集合(set):集合是一个无序的序列,集合中的元素可以是任意数据类型;表现形式是set(集合的元素),能够实现自动去重;集合传入的必须是一个hashable类型值,(不能存储字典格式的值);并且创建集合的时候还不能够这样表示set1={},这个表示不是空集合,这表示的是空字典;

    1.创建一个集合

    # 直接声明:
    set1 = {1,2,3,4}

    list1 = [1,2,3,4,1,2,3,4] set1 = set(list1) # 将列表传入 print(set1) # 返回值为:{1, 2, 3, 4}

    2.集合的运算关系

    交集:取两个集合的相同元素构成一个新集合

    # 集合求交集
    set1 = {1,2,3,4,5,6,'c','d'}
    set2 = {'a','b','c','d',1,6}
    print(set1 & set2)  # 返回的结果为:{1, 'c', 'd', 6}

    并集:取两个集合的所有元素构成一个新集合去除相同元素

    # 集合求并集
    set1 = {1,2,3,4,5,6,'c','d'}
    set2 = {'a','b','c','d',1,6}
    print(set1 | set2)  # 返回的结果为:{'b', 1, 2, 3, 4, 5, 6, 'a', 'd', 'c'}

    差集:由A集合-B集合,去掉A集合中元素在B集合中,只取A集合中元素不在B集合中的,并生成一个新集合

    # 集合求差集
    set1 = {1,2,3,4,5,6,'c','d'}
    set2 = {'a','b','c','d',1,6}
    print(set1 - set2)  # 返回的结果为:{2, 3, 4, 5}

    非集合:取两个集合的交集,然后根据交集取两个集合的补集,最后将补集取并集

    # 集合求非集
    set1 = {1,2,3,4,5,6,'c','d'}
    set2 = {'a','b','c','d',1,6}
    print(set1 ^ set2)  # 返回的结果为:{2, 3, 4, 5, 'a', 'b'}

    3.集合的判断方法

    # 判断此集合是否被另外集合包含
    print(set1.issubset(set2)) # 如果set2集合中元素包含了set1则会返回True否则返回False
    # 判断此集合是否包含另外一个集合
    print(set1.issuperset(set2))# 如果set1集合中元素包含了set2则会返回True否则返回False
    # 如果两个集合的交集为空则返回True
    print(set1.isdisjoint(set2))
  • 相关阅读:
    HashMap实现分析
    序列化与transient
    MySQL计划任务(事件调度器)(Event Scheduler)[转]
    利用innodb_force_recovery修复MySQL数据页损坏
    Java对Jar文件的操作[转]
    聚集索引与非聚集索引
    JVM学习(二)
    一句道破所有的springmvc(面试必备)
    springboot中的外界jar的引入:
    springboot中的springSession的存储和获取
  • 原文地址:https://www.cnblogs.com/XhyTechnologyShare/p/11850971.html
Copyright © 2011-2022 走看看