Duda decimales
Dario Ocles
dario.ocles en gmail.com
Jue Ene 17 15:32:46 CET 2008
2008/1/17, Dario Ocles <dario.ocles en gmail.com>:
> 2008/1/17, Jean Carlos Rodrìguez <jeancarlosr_ve en yahoo.com>:
> > Hola amigos creo que esto ya se discutio pero necesito refrescar un poco..
> > tengo esto :
> > >>> a = 236.76
> > >>> b = a%2
> > >>> print b
> > 0.76
> > >>> c = b*1000
> > >>> print c
> > 760.0
> > >>> print int(c)
> > 759
> > >>>
> >
> > que paso??? como hago para arreglar esto, ya que solo necesito la parte entera
> >
>
> En la salida que te muestro a continuación te das cuenta porque te
> sucede eso... el porque print redondea de esa manera te lo debo.
>
Perdón... que animal que soy! La función int() siempre redondea hacia
abajo, print lo único que hace es imprimir lo que int() le devuelve.
El problema es que cuando haces "print c" te redondea hacia arriba (y
este porque es el que te debo) y te oculta todos los decimales que
tiene.
> >>> a = 236.76
> >>> b = a%2
> >>> print b
> 0.76
> >>> b
> 0.75999999999999091
> >>> c = b*1000
> >>> c
> 759.99999999999091
> >>> print int(c)
> 759
> >>>
> >>> print int(round(c))
> 760
> >>>
>
> Saludos.
>
Saludos y perdón por la confusión que cree.
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es