zoukankan      html  css  js  c++  java
  • 集合类型

    集合(set) 是一个无序的不重复元素序列.

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

      集合内的元素必须是不可变类型

      集合内元素无序

      集合内元素不能重复

    常用操作+内置的方法

    1.长度len

    2.成员运算in 和 not in

    pythons={'张铁蛋','李铜淡','王金蛋','赵银胆','alex','kevin'}
    linuxs={'oldboy','张铁蛋','赵银胆','alex','wxx'}
    3、|合集:求所有报名的学生
    print(pythons | linuxs)
    print(pythons.union(linuxs))

    4、&交集:求同时报名两门课程的学生
    print(pythons & linuxs)

    5、-差集: 求只报名python课程的学员
    print(pythons - linuxs)
    print(linuxs - pythons) #求只报名linux课程的学员

    6、^对称差集:求没有同时报名两门课程的学生
    res=(pythons - linuxs) | (linuxs - pythons)
    res=pythons ^ linuxs
    print(res)

    7.==
    s1={1,2,3}
    s2={3,2,1}
    print(s1 == s2)
    8.父集: >=
    9,子集: <=


      集合的去重
    局限性: 只能针对不可变类型 不能保证原来的顺序
    names=['egon','egon','egon','alex','alex','kevin']
    
    new_names=list(set(names))
    print(new_names)
    
    #输出结果
    ['alex', 'egon', 'kevin']
    l=[
        {'name':'egon','age':18,'sex':'male'},
        {'name':'alex','age':73,'sex':'male'},
        {'name':'kevin','age':20,'sex':'female'},
        {'name':'egon','age':18,'sex':'male'},
        {'name':'egon','age':18,'sex':'male'},
    ]
    new_l=[]
    for dic in l:
        if dic not in new_l:
            new_l.append(dic)
    
    print(new_l)
    
    
    #输出结果
    [{'name': 'egon', 'age': 18, 'sex': 'male'}, {'name': 'alex', 'age': 73, 'sex': 'male'}, {'name': 'kevin', 'age': 20, 'sex': 'female'}]




















  • 相关阅读:
    do...while(0)的妙用
    2013-07-23工作记录
    2013-07-22工作记录
    完全零基础入门——第二天
    【转】学习Flex ActionScript 3.0 强烈推荐电子书
    完全零基础入门——第一天
    【转】待整理
    【luogu P7599】雨林跳跃
    【ybt金牌导航5-4-4】【luogu P4842】城市旅行
    【ybt金牌导航5-4-3】【luogu P2387】魔法森林
  • 原文地址:https://www.cnblogs.com/kp1995/p/10003407.html
Copyright © 2011-2022 走看看