> >
> > def OnClickAceptar(self,event):
> >         # Calcular Resultados
> >         global
> monto_descuento,nrocheque,nombre,apellidos,banco,monto,porcentajeinicial,
> monto_mensual, monto_xdia, monto_decuento, dias, total_a_pagar
> >
> >         nrocheque = self.textoNrocheque.GetValue()
> >         banco = self.textoBanco.GetValue()
> >         monto = self.textoMonto.GetValue()
> >         nombre = self.textoNombre.GetValue()
> >         apellidos = self.textoApellidos.GetValue()
> >         porcentajeinicial = self.textoPorcentajeInicial.GetValue()
> >         dias = self.textoDias.GetValue()
> >
> >         monto = float(monto)
> >         porcentajeinicial = float(porcentajeinicial)
> >         monto_mensual = float(0.00)
> >         monto_mensual = (monto * porcentajeinicial)/100
> >         monto_xdia = float(0.00)
> >         monto_xdia = monto_mensual/30
> >         monto_descuento = float(0.00)
> >         dias = float(dias)
> >         monto_descuento = monto_xdia * dias
> >
> >         total_a_pagar = float(0.00)
> >         total_a_pagar = monto - monto_descuento
> >
>
>
> Es mejor no utilizar variables globales, si lo que quieres pasarselo a
> otra ventana, ten una referencia a dicha ventana en la actual (se la
> puedes pasar al crearla por ejemplo) y le das directamente los datos:
>
>     self.ventanaPadre.setMonto(self.textoMonto.GetValue())
>
> Algo así para cada valor, o mucho mejor si los datos los mantienes en
> un diccionario (o un objeto) y solo pasas el diccionario con todos los
> datos.
>
>
Además de lo que comenta Carlos, que entiendo que es lo que quieres hacer,
hay cosas en tu código que no son muy 'pythónicas':

En general, es buena idea seguir el pep8. Aquí te dejo un enlace a la
convención para nombrar las cosas:
http://www.python.org/dev/peps/pep-0008/#naming-conventions

WxPython no es muy pythónico en ese sentido y puede llevarte a error pero
parece que tiene una buena razón para ello:
http://wiki.wxpython.org/Porting%20Widgets%20From%20C%2B%2B#Is_The_Code_Pythonic.3F

Por otra parte, Python es de tipado dinámico, no es necesario que 0.00 lo
pases por float() como haces en algunas de las líneas que muestras. Si
haces lo siguiente:

total_a_pagar = 0.0

Python lo convierte a float sin problemas.

Luego, hay líneas redundantes. Por ejemplo:

         monto_mensual = float(0.00)
         monto_mensual = (monto * porcentajeinicial)/100
         monto_xdia = float(0.00)
         monto_xdia = monto_mensual/30

En este caso, la primera y la tercera línea serían inútiles (hay más, solo
pongo unas pocas para explicarlo).

Saludos.
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a