Foros del Web » Programando para Internet » Python »

script cuestionario

Estas en el tema de script cuestionario en el foro de Python en Foros del Web. Hola a todos, estoy haciendo un cuestionario en python y ando un poco atascada, alguien conoce algún sitio desde dónde pueda consultar otros scripts de ...
  #1 (permalink)  
Antiguo 01/12/2012, 15:57
 
Fecha de Ingreso: noviembre-2012
Ubicación: la superficie
Mensajes: 12
Antigüedad: 11 años, 7 meses
Puntos: 1
Pregunta script cuestionario

Hola a todos,

estoy haciendo un cuestionario en python y ando un poco atascada, alguien conoce algún sitio desde dónde pueda consultar otros scripts de este tipo?creo que ideas nuevas me pueden ayudar a darle una forma más concreta al mío.
Muchas gracias
  #2 (permalink)  
Antiguo 01/12/2012, 16:09
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 4 meses
Puntos: 1329
Respuesta: script cuestionario

Con esa descripción no creo que encuentres lo que buscas.

Quizá lo mejor sea que digas en que parte te atascas y así podríamos tratar de ayudar.

Saludos
__________________
Grupo Telegram Docker en Español
  #3 (permalink)  
Antiguo 01/12/2012, 17:26
 
Fecha de Ingreso: noviembre-2012
Ubicación: la superficie
Mensajes: 12
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: script cuestionario

vale, cierto.
a ver, primero le defino los objetos (class pregunta, class respuesta, y demás), a continuación meto los datos concretos de cada pregunta y respuesta.
el tema es que el cuestionario responde cierto tipo de frases dependiendo de tus respuestas anteriores y no tengo claro como referirme a las respuestas, que aún no existen, porque son raw_input del usuario, en la descripción de los objetos...
va, no sé si me explico, creo que no, cuando tenga más código hecho meteré algún fragmento por aquí para dejar claro a lo que me refiero........
aunque realmente, si consigo sacar sola el código, supongo que será más gratificante, no sé, quizá sea una idea demasiado romántica......seguiré trabajando en ello en todo caso
  #4 (permalink)  
Antiguo 02/12/2012, 17:01
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 3 meses
Puntos: 1360
Respuesta: script cuestionario

Yo entiendo perfectamente.

Lo que quieres hacer es un árbol de dialogos.

Esto lo puedes hacer fácilmente implementando tus clases de pregunta, respuesta y una clase historia, donde estén todas las posibles rutas.

Si esto no es lo que quieres hacer entonces por favor da una descripción mas completa.
  #5 (permalink)  
Antiguo 03/12/2012, 05:01
 
Fecha de Ingreso: noviembre-2012
Ubicación: la superficie
Mensajes: 12
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: script cuestionario

Sí, entendiste, es eso mismo,
trabajaré sobre la idea de una clase historia.....creo que puede resultar muy bien, muchas, muchas gracias
os mantendré informados de mis progresos, quizá a alguien le sirva
chao a todos
  #6 (permalink)  
Antiguo 03/12/2012, 11:32
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 3 meses
Puntos: 1360
Respuesta: script cuestionario

Código Python:
Ver original
  1. # -*- coding: utf-8 -*-
  2. class Answer(object):
  3.     def __init__(self, text):
  4.         self.text = text
  5.  
  6.     def __hash__(self):
  7.         return hash(self.text)
  8.  
  9.     def __eq__(self, other):
  10.         return self.text == other
  11.  
  12.     def __unicode__(self):
  13.         return u'%s' % (self.text,)
  14.  
  15. class Question(object):
  16.     def __init__(self, text, possible_answers):
  17.         self.text = text
  18.         self.possible_answers = possible_answers
  19.  
  20.     def get_next_question(self, answer):
  21.         if self.possible_answers:
  22.             return self.possible_answers.get(answer)
  23.  
  24.     def __unicode__(self):
  25.         s =  u'{0}\n'.format(self.text)
  26.         if self.possible_answers:
  27.             s += u'\n'.join(u'    ' + unicode(i) for i in self.possible_answers.keys())
  28.         return s
  29.  
  30. dialog = Question(u'¿Eres hombre o mujer?',
  31.             {
  32.                 Answer('hombre'): Question(u'¿Te llamas Ramón?',
  33.                  {
  34.                     Answer('si'): Question(u'Hola Ramón', None),
  35.                     Answer('no'): Question(u'Deberías de llarte Ramón', None),
  36.                     Answer('no se'): Question(u'¿Como no puedes saber?', None)
  37.                  }),
  38.                 Answer('mujer'): Question(u'¿Te llamas Maria?',
  39.                 {
  40.                     Answer('si'): Question(u'Hola Maria :D', None),
  41.                     Answer('no'): Question(u'Deberías llamarte Maria', None),
  42.                     Answer('no se'): Question('¿Como no puedes saber tu nombre?', None),
  43.                 })
  44.             }
  45.         )
  46.  
  47. question = dialog
  48. while question:
  49.     print unicode(question)
  50.     if question.possible_answers is None:
  51.         break
  52.     answer = Answer(raw_input('> '))
  53.     question = question.get_next_question(answer)

La verdad es sorprendentemente fácil de modelar con diccionarios.
  #7 (permalink)  
Antiguo 03/12/2012, 15:19
 
Fecha de Ingreso: noviembre-2012
Ubicación: la superficie
Mensajes: 12
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: script cuestionario

fantástico, bueno, lo acabo de ver y tendré que probarlo porque lo que deseo hacer es algo un poco más complicado, pero ver lo tuyo la verdad que me ayuda mucho. Me fijaré detalladamente y te cuento.
muchas, muchas gracias

por cierto, qué opinión os merece el tema TDD??

Etiquetas: cuestionario, gui
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:01.