función random.shuffle() en Python

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']

Publicación traducida automáticamente

Artículo escrito por Yash_R y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *