zoukankan      html  css  js  c++  java
  • python学习笔记(10)--组合数据类型(集合类型)

    集合类型

    集合是多个元素的无序组合,每个元素唯一,不存在相同类型,每个元素是不可变类型。用{}表示,元素间用逗号分隔。建立结合类型用{},或set函数,如果是空集合必须用set。

    >>> a={'a','b'}
    >>> a
    {'a', 'b'}
    >>> b=set("pypy123")
    >>> b
    {'p', '2', 'y', '1', '3'}

    集合操作符:

    S|T  返回一个新集合,包括在集合S和T中的所有元素

    S-T  包括在集合S但不在T中的元素

    S&T 包括同时在集合S和T中的元素

    S^T 包括集合S和T中的非相同元素

    S<=T或S<T  返回True/False,判断S和T的子集关系

    S>=T 或S>T 返回True/False,判断S和T的包含关系

    增强操作符:

    S |=T

    S -=T

    S &= T

    S ^=T

    集合处理方法:

    S.add(x)       如果x不在S中,将x增加到S

    S.discard(x)  移除S中元素x,如果x不在集合中,不报错

    S.remove(x)  移除S中元素x,如果x不在集合中,产生KeyError异常

    S.clear()        移除S中所有元素

    S.pop()          随机返回S的一个元素,更新S,若S为空产生KeyError异常

    S.copy()        返回S的一个副本

    len(S)            返回集合的元素个数

    x in S            在,返回True

    x not in S      不在返回True

    set(x)            将x变量转换为集合类型

    >>> b
    {'2', 'y', '1', '3'}
    >>> try:
           while True:
              print(b.pop(),end="")
        except:
           pass
    2y13
    >>> b
    set()

    集合类型应用场景:

    包含关系比较:‘p’ in {'p','y',123}    {‘p’, 'y'} >= {'p','y',123}

    数据去重:将有重复元素的列表类型转换为没有重复元素的集合类型,如果需要使用列表类型,再将集合类型转换为列表类型

    >>> ls=['p', 'y', 'y', 'p', 123]
    >>> ls
    ['p', 'y', 'y', 'p', 123]
    >>> s=set(ls)
    >>> s
    {'y', 123, 'p'}
    >>> It=list(s)
    >>> It
    ['y', 123, 'p']
  • 相关阅读:
    一条查询SQl是怎样执行的
    MySQL45讲笔记-事务隔离级别,为什么你改了数据我看不见
    了解一下IO控制器与控制方式
    进程的同步与互斥
    预防死锁,检测死锁,避免死锁,解除死锁....
    初识Git
    剑指offer-查找数组中重复的数字
    常见的几种进程调度算法
    操作系统-进程的状态以及转换
    中断、异常、系统调用
  • 原文地址:https://www.cnblogs.com/xingmuxin/p/8990500.html
Copyright © 2011-2022 走看看