Mélanger aléatoirement les éléments d'une liste sous python

Published: 25 août 2014

DMCA.com Protection Status

Mélanger aléatoirement une liste sous python

Avec python on peut facilement mélanger aléatoirement les éléments d'une liste en utilisant shuffle. Exemple:

>>> import random
>>> L = ['a','b','c','d','e','f']
>>> random.shuffle(L)
>>> L
['b', 'c', 'a', 'd', 'f', 'e']
>>>

Mélanger aléatoirement avec un paramètre pour obtenir toujours le même résultat:

Il est aussi possible de mélanger aléatoirement avec un paramètre (lambda) pour obtenir toujours le même résultat (voir python shuffling with a parameter to get the same result):

>>> import random
>>> r = random.random()
>>> r
0.4309619702601998
>>> x = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(x, lambda: r)
>>> x
[5, 1, 4, 2, 6, 3]
>>> random.shuffle(x, lambda: r)
>>> x
[6, 5, 2, 1, 3, 4]
>>> x = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(x, lambda: r)
>>> x
[5, 1, 4, 2, 6, 3]

Recherches associées