[Olpc-uruguay] Actividad para llevar fichas personales de los alumnos

Gabriel Eirea geirea en gmail.com
Jue Oct 7 07:45:53 EDT 2010


El día 6 de octubre de 2010 21:39, amviera at adinet.com.uy
<amviera at adinet.com.uy> escribió:
> Hola a todos.
>
> La inspectora de la escuela en que trabajo me pidió que intentara llevar
> fichas con datos personales de los niños con los que trabajo, que son unos
> cuantos y provenientes de distintas escuelas. En una entrevista con ella
> surgió la idea de utilizar la XO ya que posibilita llevar un registro
> fotográfico y fílmico de los distintos momentos vividos por cada uno de los
> grupos.
>
> Es así que me puse a trabajar programando en python y surgieron dos
> programas, uno que ya les envé que permite tomar fotografías y clasificarlas
> por grupo y/o escuela, y otro que lleva fichas con datos personales tal como
> si se tratara de una base de datos.
>
> Este último ya está terminado. Me faltan algunos pequeños ajustes y lo
> estaré subiendo a la red. Pero es un programa realizado en forma lineal.

Excelente iniciativa!

> Ahora estoy haciendo una nueva versión pero utilizando PYGTK, lo que me
> obligó a estudiar POO. Funciona correctamente, aunque sólo un detalle no
> pude solucionar y quizá alguno de ustedes me pueda dar una mano en eso. El
> problema es que con la versión en GTK no puedo guardar los datos, cosa que
> no se me complicó en la versión anterior.
>
> El mensaje de error es:
> TypeError: 'int' object is unsubscriptable

Este error aparece en general cuando se trata de acceder a un objeto
como si fuera una secuencia cuando en realidad no lo es. Por ejemplo
q[1] cuando q es un entero y no una lista.

> No entiendo por qué motivo no funciona, no encuentro el error. ¿Qué me
> sugieren hacer?
>
> Desde ya les estoy muy agradecido.
>
> Saludos, Mauricio Viera.
>
> El código muy resumido es:
>
> ...
> class hc:
> def __init__(self,p,x,cargando):
> # Hay una serie de 17 cajas de texto para llevar datos de nombre, apellido,
> teléfono, etc.
> txtnom=gtk.Entry(0)
> txtape=gtk.Entry(0)
> ...
> datos=[txtnom.get_text(), txtape.get_text(), y asì con las demás cajas]
> cmdguardar=gtkButton(label=Guardar)
> cmdguardar.connect("clicked",self.guardar,datos,p,x,nombrearchivo)
> ...
>
> def guardar(self,cmdguardar,datos,p,x,nombrearchivo)
> ...
> f=open(nombrearchivo,'w')
> for v in range (0,17):
> f.write(datos[v]+"/n")
> f.close()
> ...

Lo único que veo acá que puede dar problema es la variable datos
dentro de guardar. Te recomiendo agregar una sentencia "print datos"
antes de abrir al archivo para ver qué contiene esa variable y de qué
tipo es.

También te recomiendo mandar todo el mensaje de error que te da Python
desde "Traceback..." hasta el final, ahí también te dice en qué línea
está el problema.

Saludos,

Gabriel


> _______________________________________________
> Olpc-uruguay mailing list
> Olpc-uruguay at lists.laptop.org
> http://lists.laptop.org/listinfo/olpc-uruguay
>
>


More information about the Olpc-uruguay mailing list