在Python中对列表进行随机排序

13

我想知道在Python中有没有一种好的方法来“打乱”一个项目列表。例如,[1,2,3,4,5] 可以被打乱 / 随机到 [3,1,4,2,5](任何顺序都是等可能的)。

3个回答

43
from random import shuffle

list1 = [1,2,3,4,5]
shuffle(list1)

print list1
---> [3, 1, 2, 4, 5]

4
使用random.shuffle
>>> import random
>>> l = [1,2,3,4]
>>> random.shuffle(l)
>>> l
[3, 2, 4, 1]

random.shuffle(x[, random])

这个函数会将序列 x 在原地打乱。可选参数 random 是一个返回值为 [0.0, 1.0) 范围内的随机浮点数的 0-参数函数;默认情况下,它是 random() 函数。


2

随机打乱它!

In [8]: import random

In [9]: l = [1,2,3,4,5]

In [10]: random.shuffle(l)

In [11]: l
Out[11]: [5, 2, 3, 1, 4]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接