首页 > 其他 > 详细

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

时间:2019-11-09 14:10:03      阅读:81      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 

 

关于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’)解码给定字符串,返回长度

技术分享图片

举例:

技术分享图片

 

 

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

原文:https://www.cnblogs.com/oldfish123/p/11825292.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!