[pyar] Randomizar diccionarios para un programa.
Tordek
kedrot en gmail.com
Jue Mayo 10 02:51:00 ART 2012
2012/5/10 Angel Freire <cuerty en gmail.com>:
>>>> import random
>>>> preguntas_respuestas = {'Cuanto es 1+1':('a: 2','b: 5','c: 8'),'Tu mama
>>>> te quiere?':['a: si', 'b: no', 'c: tal vez']}
>>>> pregunta, respuestas = random.choice(preguntas_respuestas.items())
>>>> pregunta
> 'Tu mama te quiere?'
>>>> respuestas
> ['a: si', 'b: no', 'c: tal vez']
Esta es la mejor hasta ahora, pero pongo mis 2 cambios:
1. No uses dict, si siempre vas a sacarle el .items()
2. Usá shuffle; de esa manera, si hacés n preguntas seguidas (o lo que
sea), garantizás que no se repitan
>>> preguntas_respuestas = [("Cuanto es 1+1",('a: 2','b: 5','c: 8')), ('Tu mama te quiere?', ('a: si', 'b: no', 'c: tal vez'))]
>>> random.shuffle(preguntas_respuestas)
>>> for pregunta, respuesta in preguntas_respuestas[:3]:
print pregunta
print respuestas
print "==="
Tu mama te quiere?
('a: si', 'b: no', 'c: tal vez')
===
Cuanto es 1+1
('a: 2', 'b: 5', 'c: 8')
===
More information about the pyar
mailing list