Python - Desordenador lista

 
Vista:
sin imagen de perfil
Val: 38
Ha disminuido su posición en 3 puestos en Python (en relación al último mes)
Gráfica de Python

Desordenador lista

Publicado por Pedro (20 intervenciones) el 04/10/2016 23:06:00
Un programa que dada una lista, al ejecutarlo desordene dicha lista de forma impredecible todo el rato.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 1.139
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Desordenador lista

Publicado por kip (257 intervenciones) el 05/10/2016 02:54:42
Hola, aqui te dejo un sencillo codigo a ver si te sirve:

1
2
3
4
5
6
7
8
from random import shuffle
def randordList(lista):
    if (isinstance(lista, list)):
        shuffle(lista)
        return lista
 
x = [ i for i in range(10)] #Genero una lista para probar la funcion
print (randordList(x))

Nos cuentas si es lo que necesitas!

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de xve
Val: 1.474
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Desordenador lista

Publicado por xve (1637 intervenciones) el 05/10/2016 07:51:59
Excelente Kip!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 38
Ha disminuido su posición en 3 puestos en Python (en relación al último mes)
Gráfica de Python

Desordenador lista

Publicado por Pedro (20 intervenciones) el 05/10/2016 19:57:20
Está bien, el problema es que no me dejan utilizar la función shuffle. Hay alguna manera de hacerlo sin esa función?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 1.139
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Desordenador lista

Publicado por kip (257 intervenciones) el 05/10/2016 20:45:20
Bueno, aqui te dejo una funcion que si bien usa la libreria random no usa mas que la funcion randint:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import random
def randordList(lista):
    if (isinstance(lista, list)):
        maxim = len(lista)
        new_list = []
        success = True
        while success:
            for i in range(maxim-1):
                new_value = lista[random.randint(0, maxim-1)]
                if not(new_value in new_list):
                    new_list.append(new_value)
                if (len(new_list) == maxim):
                    success = False
        return new_list
 
x = [ i for i in range(10)] #Genero una lista para probar la funcion
print (randordList(x))

Espero sea lo que necesites!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar