shuffle() es un método incorporado del módulo aleatorio. Se utiliza para barajar una secuencia (lista). Barajar significa cambiar la posición de los elementos de la secuencia. Aquí, la operación de barajado está en su lugar.
aleatorio.shuffle()
Sintaxis: random.shuffle(secuencia, función)
Parámetros:
- secuencia: puede ser una lista
- función: opcional y por defecto es random(). Debe devolver un valor entre 0 y 1.
Devoluciones: nada
Ejemplo 1: barajar una lista
Python3
# import the random module import random # declare a list sample_list = ['A', 'B', 'C', 'D', 'E'] print("Original list : ") print(sample_list) # first shuffle random.shuffle(sample_list) print("\nAfter the first shuffle : ") print(sample_list) # second shuffle random.shuffle(sample_list) print("\nAfter the second shuffle : ") print(sample_list)
Producción :
Original list : ['A', 'B', 'C', 'D', 'E'] After the first shuffle : ['A', 'B', 'E', 'C', 'D'] After the second shuffle : ['C', 'E', 'B', 'D', 'A']
El método shuffle() no se puede usar para mezclar tipos de datos inmutables como strings.
Ejemplo 2:
Python3
# import the random module import random # user defined function to shuffle def sample_function(): return 0.5 sample_list = ['A', 'B', 'C', 'D', 'E'] print("Original list : ") print(sample_list) # as sample_function returns the same value # each time, the order of shuffle will be the # same each time random.shuffle(sample_list, sample_function) print("\nAfter the first shuffle : ") print(sample_list) sample_list = ['A', 'B', 'C', 'D', 'E'] random.shuffle(sample_list, sample_function) print("\nAfter the second shuffle : ") print(sample_list)
Producción :
Original list : ['A', 'B', 'C', 'D', 'E'] After the first shuffle : ['A', 'D', 'B', 'E', 'C'] After the second shuffle : ['A', 'D', 'B', 'E', 'C']