Python 随机洗牌2024 年 8 月 29 日 | 5 分钟阅读 Python 的 random 包有一个内置函数 shuffle()。可以使用它来打乱序列(例如列表或元组)。在 Python 中,打乱意味着更改集合中元素的索引。 random.shuffle() 的语法我们使用 shuffle() 函数来随机更改任何可迭代对象的元素索引。此函数不返回新列表。它会修改原始列表。 shuffle() 函数的语法 函数参数 sequence: 可以接受任何 Python 可迭代对象。 function: 此参数是可选的。此函数的默认值为 random() 函数。如果我们传递一个用户定义的函数,则该函数必须返回一个在 (0, 1] 范围内的值。 返回值: 此函数不返回任何内容。 shuffle() 函数示例打乱列表 代码 输出 The original list is as follows: [1, 2, 3, 4, 5, 6] After shuffling the list the first time: [4, 3, 1, 6, 5, 2] After shuffling the list a second time: [5, 6, 4, 2, 1, 3] 使用用户定义的函数打乱列表代码 输出 The original list is as follows: [1, 2, 3, 4, 5, 6] After shuffling the list the first time: [1, 6, 2, 5, 3, 4] After shuffling the list a second time: [1, 6, 2, 5, 3, 4] 不就地随机打乱众所周知,Python shuffle() 函数就地操作给定的集合,并且不返回任何内容或返回 None,这意味着它会随机重新排列原始列表的元素并修改其内存位置。但是,我们通常需要保留原始列表或集合。 现在描述的方法允许我们保留原始列表并获得一个打乱的列表。此替代方法返回一个新创建的、已打乱的列表,而不是修改原始列表。 在修改顺序之前,我们将复制原始列表以进行保存。 代码 输出 The original list is as follows: [1, 2, 3, 4, 5, 6] After shuffling the list: [5, 2, 6, 4, 3, 1] 同时按相同顺序打乱两个列表假设我们有两个 Python 列表。我们需要打乱这两个列表以保持打乱的顺序。例如,一个列表包含字母,另一个列表包含对应的数字。让我们看看如何打乱两个列表并保持它们的顺序。 代码 输出 The first list: ['a', 'b', 'c', 'd', 'e'] The second list: [1, 2, 3, 4, 5] The first list after shuffling: ('c', 'e', 'a', 'd', 'b') The second list after shuffling: (3, 5, 1, 4, 2) 打乱 NumPy 多维数组Python 的 Numpy 模块有一个名为 numpy.random 的包。该包用于生成随机数据。在此示例中,我们将使用 Python 的 Numpy 模块创建一个二维数组。然后我们将使用 numpy.random.shuffle() 函数来打乱这个多维数组。 代码 输出 The original 2D array [[ 1 3] [ 5 7] [ 9 11] [13 15] [17 19] [21 23]] The shuffled 2D array [[13 15] [ 1 3] [21 23] [17 19] [ 9 11] [ 5 7]] 打乱一个项目并每次获得相同的结果在本节中,我们将看到如何使用 random 包的 seed 方法来打乱列表,以便每次调用 shuffle 函数时,它都会以相同的顺序打乱原始列表。因此,每次打乱后,我们都会得到相同的列表。 伪随机数生成器 (PRNG) 如何工作? Python 的 random 库并非完全随机。它使用一种称为伪随机数生成器 (PRNG) 的方法。这意味着它是一个确定性系统。random 模块的 seed 值是随机数生成的基础。默认情况下,random 包将当前系统时间作为其 seed 值。我们可以更改此 seed 值,从而更改 random.shuffle() 函数的输出。让我们看看如何使用此值。 代码 输出 The original list is: [1, 3, 5, 7, 9, 11, 13, 15] The shuffled list is: [3, 13, 11, 9, 15, 1, 5, 7] The shuffled list is: [3, 13, 11, 9, 15, 1, 5, 7] The shuffled list is: [3, 13, 11, 9, 15, 1, 5, 7] The shuffled list is: [3, 13, 11, 9, 15, 1, 5, 7] 下一主题Python 新特性 |
什么是?在本教程中,我们将讨论如何在 Python 程序中使用不同的关系运算符。关系运算符也称为比较运算符,它们的主要功能是根据操作数的值返回真或假。以下是...
阅读 4 分钟
在本教程中,我们将讨论如何在 Python 中使用 matplotlib 调整创建的图形大小。Matplotlib 库广泛用于创建图表。简介 Matplotlib 因创建用于表示数据的图形而闻名。我们可以用所有不同类型的数据填充图形,包括...
阅读 3 分钟
几个世纪以来,人类一直对候鸟迁徙这一迷人现象着迷。鸟类能够远距离导航并返回繁殖地,这确实令人惊叹。本文将探讨鸟类迁徙的复杂性、追踪技术以及研究的重要性...
5 分钟阅读
简介:在本文中,我们将讨论 Python Linux 的路径。如今,每个可能的问题都有应用程序。程序领域,无论是网络应用程序形式还是在智能手机上运行的应用程序,都具有无限的可能性,这使得 Python 成为明确的选择...
阅读 4 分钟
时间序列预测简介 一系列在恒定时间间隔内记录度量值称为时间序列。根据频率,时间序列可以分为以下几类:年度(例如,年度预算)季度(例如,支出)月度(例如,空中交通)每周(例如,...
阅读 16 分钟
什么是 Selenium 模块?Selenium 是 Python 提供的一个用于自动化测试的模块。它提供了一个易于使用的 API,借助 Selenium 驱动程序可以进行不同的功能测试。Selenium 是一个开源的 Python 框架,它提供了用于使用 Selenium 编写功能测试的 API……
阅读 2 分钟
Python 中的 "isna()" 函数 isna() 方法在 Python 中是一个强大的数据操作和分析工具箱,在处理 pandas 时被广泛使用。isna() 函数用于查找 pandas DataFrame 或 Series 中的缺失或空值。isna() 函数在各种场景中的使用...
阅读 3 分钟
散点图是一种数据可视化方法,用于显示两个数值变量之间的关系。在 Python 中,有一个名为 DataFrame 的类,可以使用 pandas 绘制散点图,此类的成员称为 plot。通过使用...
阅读 6 分钟
在本教程中,我们将编写 Python 程序来查找给定两个字符串中不常见的字符。不常见的字符是指在一个字符串中存在或在另一个字符串中存在但不在两个字符串中都存在的字符。给定的字符串是小写字符,并且...
阅读 6 分钟
文字编程总是与文字错误相关联,因为我们在编码时遇到错误是非常普遍的。错误对于所有程序员来说都非常普遍,这不仅仅是初学者才会遇到的。即使是编码多年的程序员...
阅读 13 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India