Duda sobre "aleatorizar" una lista

Enrique ecastro en dbbf.ulpgc.es
Dom Mar 7 12:03:16 CET 2004


Pablo Ruiz Múzquiz wrote:
> Hola,
> 
> En un programa que estoy haciendo necesito tomar una lista y descolocar
> sus elementos de forma aleatoria.
> 
> Ahora bien, random.shuffle() devuelve None y modifica la lista "in
> place" con lo que no podemos hacer:
> ---------------------
> l = random.shuffle(l)
> ---------------------
> 
Hola Pablo,
Sinceramente, no entiendo tu problema
No lo puedes hacer, pero tampoco lo necesitas para nada.

después de hacer
-----------------
import random

l = [1,2,3,4]
random.shuffle(l)
-----------------

en nombre "l" apunta ahora a una versión alatoria de la lista, 
exactamenet igual que si hubieras escrito l = random.shuffle(l).
Python tiene aspectos parecidos a la programación funcional.

A partir de ese momento donde uses el nombre "l" obtendrás la lista 
aleatorizada, tal como quieres (para imprimirla, añadirla a otra lista, 
lo que sea)

Enrique




Más información sobre la lista de distribución Python-es