python - 通过替换对 python 数组进行混洗

标签 python arrays list shuffle

对 python 数组或列表进行替换的最简单方法是什么?

我知道random.shuffle(),但它会重新洗牌而不进行替换。

最佳答案

您正在寻找random.choice()调用列表理解:

[random.choice(lst) for _ in range(len(lst))]

这会生成一个与输入列表长度相同的列表,但值可以重复。

演示:

>>> import random
>>> lst = [1,2,4,5,3]
>>> [random.choice(lst) for _ in range(len(lst))]
[3, 5, 1, 4, 1]

关于python - 通过替换对 python 数组进行混洗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19935050/

相关文章:

python - 使用 Python 3 从 xml 中提取数据

java - 使用 10 个线程处理一个数组

c# - 从字节码播放音频文件(音频文件格式为 CCITT A-Law)

python - 将逗号分隔字符串列表写入 Python 中的 csv 文件

c - 双重释放或损坏 - 删除列表的第一个节点时出错

c++ - 深度优先搜索构造函数错误

python - Arduino Serial.readBytes 与 RPi 通信的奇怪行为

python - 将 numpy.searchsorted 方法应用于使用 numpy.loadtxt 从文本文件加载的数组

Python - 如果仅指定条件(域),则添加条件?

java - Java 8 中使用数组流计算单词出现次数