• Python 学习笔记(十)Python集合(三)


    集合运算

    元素与集合的关系

    元素与集合的关系 ,就是判断某个元素是否是集合的一员。"a" in aset

    1 >>> s =set([1,2,3,4])
    2 >>> 1 in s  #返回true 是集合中的一员
    3 True
    4 >>> 6 in s  #返回false不是集合中的一员
    5 False
    6 >>>

    集合与集合的关系

    子集和超集

    并集

     1 >>> a =set([1,2,3,4,5])
     2 >>> b =set([1,2,3,4,5])
     3 >>> id(a) 
     4 64659240L
     5 >>> id(b) #a 与b 的内存地址不同,是两个不同的对象
     6 64656104L
     7 >>> a == b #判断a与b是否相等,相等返回true
     8 True
     9 >>> b.pop() #删除b中的一个元素
    10 1
    11 >>> b
    12 set([2, 3, 4, 5])
    13 >>> b<a  #判断b是否为a的子集,用数学符号小于判断 返回true ,说明b是a的子集
    14 True
    15 >>> b.issubset(a) #另一种判断子集的方式,使用issubset().返回true 说明b是a的子集
    16 True
    17 >>> a>b  #用数学符号大于号判断,a是否为b的超集。返回true,说明a是b的超集
    18 True
    19 >>> a.issuperset(b) #可用issuperset()判断是否为超集,返回true,说明a是b的超集
    20 True
    21 >>> a
    22 set([1, 2, 3, 4, 5])
    23 >>> c =set([0,1,3,5,6])
    24 >>> a
    25 set([1, 2, 3, 4, 5])
    26 >>> a |c  #取a与c的并集
    27 set([0, 1, 2, 3, 4, 5, 6])
    28 >>> a.union(c) #取a与c的并集
    29 set([0, 1, 2, 3, 4, 5, 6])
    30 >>> d =a.union(c)
    31 >>> d
    32 set([0, 1, 2, 3, 4, 5, 6])
    37 >>> d.issuperset(a) #d是a的超集
    38 True
    39 >>> d.issuperset(c) #d也是b的超集
    40 True

    交集 ,两个集合的公有部分

    集合的差(补)

     1 >>> a
     2 set([1, 2, 3, 4, 5])
     3 >>> c
     4 set([0, 1, 3, 5, 6])
     5 >>> a & c  #符号方法:求a与c集合的交集
     6 set([1, 3, 5])
     7 >>> a.intersection(c) #intersection()求交集
     8 set([1, 3, 5])
     9 >>> a
    10 set([1, 2, 3, 4, 5])
    11 >>> c
    12 set([0, 1, 3, 5, 6])
    13 >>> a -c  #集合a相对集合c多出来的元素
    14 set([2, 4])
    15 >>> a.difference(c) #集合a相对集合c多出来的元素
    16 set([2, 4])
    17 >>> c -a  #集合c相对集合a多出来的元素
    18 set([0, 6])
    19 >>> c.difference(a) #集合c相对集合a多出来的元素
    20 set([0, 6])
    21 >>> a.symmetric_difference(c) #对称差集,集合a相对集合c,以及集合c相对集合a,差集的并集,即两个集合中不同的部分
    22 set([0, 2, 4, 6])
    23 >>>
  • 相关阅读:
    switch循环所支持的数据类型
    java里面main方法中的String[]args
    java基本数据类型
    Jquery自定义插件
    Jquery插件(常用的插件库)
    【JAVA SE基础篇】43.Map接口和Set接口的常用方法
    【JAVA SE基础篇】42.手工实现ArrayList和LinkedList
    【JAVA SE基础篇】41.Collection、List方法和ArrayList、LinkedList、Vector底层实现
    【JAVA SE基础篇】40.容器(集合)和泛型的介绍
    【JAVA SE基础篇】39.编译时异常
  • 原文地址:https://www.cnblogs.com/wangruihua-521/p/8557812.html
Copyright © 2020-2023  润新知