随机替换一个python数组

时间:2013-11-12 16:48:57

标签: python arrays list shuffle

将python数组或列表随机替换的最简单方法是什么?

我知道random.shuffle(),但它会在没有替换的情况下进行重组。

1 个答案:

答案 0 :(得分:3)

您正在寻找列表理解中的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]