Python中random.shuffle()函数用法代码案例

 更新时间:2022年11月25日 14:57:34   作者:一穷二白到年薪百万  
random.shuffle方法,对元素进行重新排序,打乱原有的顺序,返回一个随机序列,该方法的作用类似洗牌,本文重点给大家介绍Python中random.shuffle()函数用法代码案例,感兴趣的朋友跟随小编一起看看吧

函数用法

  random.shuffle()用于将一个列表中的元素打乱顺序,值得注意的是使用这个方法不会生成新的列表,只是将原列表的次序打乱

代码案例

# shuffle()使用样例
import random

x = [i for i in range(10)]
print(x)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
random.shuffle(x)
print(x)
[2, 5, 4, 8, 0, 3, 7, 9, 1, 6]

源码及注释

def shuffle(self, x, random=None):
    """Shuffle list x in place, and return None.
    原位打乱列表,不生成新的列表。

    Optional argument random is a 0-argument
    function returning a random float in [0.0, 1.0); 
    if it is the default None, 
    the standard random.random will be used.
	可选参数random是一个从0到参数的函数,返回[0.0,1.0)中的随机浮点;
	如果random是缺省值None,则将使用标准的random.random()。
    """

    if random is None:
        randbelow = self._randbelow
        for i in reversed(range(1, len(x))):
            # pick an element in x[:i+1] with which to exchange x[i]
            j = randbelow(i + 1)
            x[i], x[j] = x[j], x[i]
    else:
        _int = int
        for i in reversed(range(1, len(x))):
            # pick an element in x[:i+1] with which to exchange x[i]
            j = _int(random() * (i + 1))
            x[i], x[j] = x[j], x[i]

参考文献

[1]python中random.shuffle 使用

[2]Python中打乱列表顺序 random.shuffle()的使用方法

到此这篇关于Python中random.shuffle()的用法的文章就介绍到这了,更多相关python random.shuffle()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Sanic框架配置操作分析

    Sanic框架配置操作分析

    这篇文章主要介绍了Sanic框架配置操作,简单分析了Sanic框架中常见的加载配置使用方法,并简单说明了内置配置的预定义变量与对应功能,需要的朋友可以参考下
    2018-07-07
  • Python 批量验证和添加手机号码为企业微信联系人

    Python 批量验证和添加手机号码为企业微信联系人

    你是否也有过需要添加很多微信好友的时候,一个个输入添加太麻烦了,本篇文章手把手教你用Python替我们完成这繁琐的操作,大家可以在过程中查缺补漏,看看自己掌握程度怎么样
    2021-10-10
  • Python使用matplotlib创建Gif动图的思路

    Python使用matplotlib创建Gif动图的思路

    这篇文章主要介绍了Python使用matplotlib创建Gif动图,我们将讨论matplotlib提供的名为“Animation”的动画库之一,Python二维绘图库是Matplolib可以轻松创建绘图、直方图、条形图、散点图等,需要的朋友可以参考下
    2022-04-04
  • 解决Linux系统中python matplotlib画图的中文显示问题

    解决Linux系统中python matplotlib画图的中文显示问题

    这篇文章主要介绍了解决Linux系统中python matplotlib画图的中文显示问题,需要的朋友可以参考下
    2017-06-06
  • Python给图像添加噪声具体操作

    Python给图像添加噪声具体操作

    在本文里我们给大家整理了关于Python如何给图像添加噪声的相关知识点以及操作步骤,需要的朋友们学习下。
    2019-03-03
  • 中秋送礼分配不均这款python刮刮卡完美解决问题

    中秋送礼分配不均这款python刮刮卡完美解决问题

    这篇文章主要介绍了用Python实现一个抽奖刮刮卡来解决给小朋友的礼物不均,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2021-09-09
  • Python技法-序列拆分详解

    Python技法-序列拆分详解

    Python中的任何序列(可迭代的对象)都可以通过赋值操作进行拆分,包括但不限于元组、列表、字符串、文件、迭代器、生成器等。
    2021-10-10
  • Django使用装饰器限制对视图的访问及实现原理

    Django使用装饰器限制对视图的访问及实现原理

    除了可以在视图处理中校验用户身份以及验证用户权限之外,Django还提供了便捷的装饰器来完成这两类校验,下面介绍这两个装饰器的使用方法与实现原理,对Django装饰器限制视图访问相关知识感兴趣的朋友一起看看吧
    2022-10-10
  • 使用python检查值是否已经存在于字典列表中

    使用python检查值是否已经存在于字典列表中

    这篇文章主要介绍了使用python检查值是否已经存在于字典列表中,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • TensorFlow2.0矩阵与向量的加减乘实例

    TensorFlow2.0矩阵与向量的加减乘实例

    今天小编就为大家分享一篇TensorFlow2.0矩阵与向量的加减乘实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02

最新评论