Метод shuffle модуля random - перетасовка списка на месте

В Python функция shuffle модуля random позволяет перетасовать, то есть перемешать, список, переданный ему в качестве аргумента. На самом деле shuffle является методом экземпляра random.Random.

С помощью shuffle можно, например, перемешать список последовательных натуральных чисел. Таким образом, это будет своего рода список случайных чисел, но в котором встречаются все натуральные числа, и каждое только один раз.

>>> from random import shuffle
>>> a = [i for i in range(1, 16)]
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
>>> shuffle(a)
>>> a
[6, 15, 4, 13, 1, 9, 11, 14, 7, 3, 10, 2, 8, 12, 5]
>>> shuffle(a)
>>> a
[13, 1, 8, 7, 4, 5, 6, 9, 14, 3, 15, 10, 2, 11, 12]

Естественно, можно перемешивать любые другие списки.

>>> b = ['red', 'green', 'blue', 'yellow', 'brown']
>>> shuffle(b)
>>> b
['green', 'brown', 'yellow', 'blue', 'red']