[pyar] Randomizar diccionarios para un programa.

Javier Marín nano.world.contact en gmail.com
Vie Mayo 11 13:54:41 ART 2012


Tengo un par de dudas con lo que puso tordek.

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 "==="

cuando creo la lista "pregunta_respuestas" y luego hago dentro de ella una
tupla con otra tupla dentro ¿Como funciona eso? Osea, necesito acceder a la
tupla que está dentro de la tupla, porque el usuario debe elegir una de
esas respuestas, anduve intentando pero la verdad es que eran intentos
medio ridículos...

Traté haciendo dos listas, una para preguntas y otra para respuestas. A la
lista de preguntas le aplicaba Shuffle y luego con un numero aleatorio le
indicaba el indice, la cosa es que no se cual numero va a salir para crear
un condicional que diga "si sale tal posición, imprimir este set de
preguntas"... Quizá no me explique del todo pero les dejo un pedazo del
código que traté y que no veo como lo correcto para resolver el problema.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import random

preguntas = ['Cuanto es 1+1', 'Tu mama te quiere?']
respuestas = ['a: 5\n b: 40\n c: 2\n','a: si\n b: no\n c: tal vez\n']
numero_pregunta = random.randint(0,1)
random.shuffle(preguntas)
#for i in preguntas:
print preguntas[numero_pregunta]

Otra cosita que no entiendo es, cuando se usa "for pregunta, respuesta in
preguntas_respuestas[:3]:" ¿Qué tiene que hacer el [:3] ahí? Si se supone
que solo son dos elementos (0 y 1) en la lista... Voy entendiendo, sí,
aunque sigo en dudas jaja.

Disculpen mi lentitud

El 10 de mayo de 2012 04:13, Alejandro Santos <listas en alejolp.com> escribió:

> 2012/5/10 Javier Marín <nano.world.contact en gmail.com>:
> > Pues sigo sin lograrlo, estoy tratando de hacerlo de los dos modos, con
> > listas y con los diccionarios...
> >
>
> Ya sea usando listas, diccionarios, o alguna otra diferente, te
> conviene elegir una y quedarte con esa.
>
> > #!/usr/bin/env python
> > # -*- coding: utf-8 -*-
> >
> > import random
> > from random import choice
> >
> > preguntas_respuestas = {'Cuanto es 1+1':('a: 2','b: 5','c: 8'),'Tu mama
> te
> > quiere?':['a: si', 'b: no', 'c: tal vez']}
> > clave = preguntas_respuestas.keys()
> > clave_azar = random.choice(clave)
> >
> > print clave, preguntas_respuestas[clave]
> >
>
> "clave" es una lista de strings, y clave_azar es un unico string. Acá
> debería ser:
>
> print clave_azar, preguntas_respuestas[clave_azar]
>
> --
> Alejandro Santos
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>



-- 
Nano.
@_nanodice_
Blog: nano-dice <http://nano-dice.blogspot.com>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120511/6e01981b/attachment.html>


More information about the pyar mailing list