• 关于List和String有意思的几个应用


     

    关于List和String有意思的几个应用

    1. List:all_equal

    功能:验证列表中的所有元素是否是都一样的。

    解析:该技巧是使用[1:] 和 [:-1] 来比较所给定列表中的所有元素。

    举例:

     

    2. List:all_unique

    功能:如果列表所有值都是唯一的,返回 True,否则 False

    解析:在给定列表上使用set()方法去重,一次来比较它和原列表的长度。

    举例:

    3. List:difference功能实现:返回两个iterables间的差异。

    解读:创建b的集合,使用a的列表推导式保留不在_b中的元素。

    举例:

    4. List:flatten

    功能:一次性的整合列表。

    解析:使用嵌套的列表提取子列表中的每个值。

    举例:

    5. List:shuffle

    功能:将列表元素顺序随机打乱。

    解析:使用(Fisher-Yates算法)重新排序列表元素。

    Fisher-Yates

    _Yates的原理就是把从1到n的顺序候选集随机打乱,

    做法就是

    第1次从1-n的候选集合随机选个数,拿出此数,并把它从候选集合剔除(候选集合n-1)。

    第2次从1-n-1的候选集合随机选个数,拿出此数,并把它从候选集合剔除(候选集合n-2)。

    第2次从1-n-2的候选集合随机选个数,拿出此数,并把它从候选集合剔除(候选集合n-3)。

    以此类推

     举例:

    6. String:byte_size

    功能:返回字符串的字节数。

    解析:使用string.encode(‘utf-8’)解码给定字符串,返回长度

    举例:

  • 相关阅读:
    【对拍√】
    hdu5791 TWO
    luogu P1220 关路灯
    【NOI2001】食物链
    【HAOI2016】食物链
    luogu P1006 传纸条
    可持久化平衡树
    可持久化并查集
    线段树合并(【POI2011】ROT-Tree Rotations)
    可持久化数组
  • 原文地址:https://www.cnblogs.com/oldfish123/p/11825292.html
Copyright © 2020-2023  润新知