Python3 Función round()

Python3 数字Números en Python3


Descripción

round()El método devuelve el valor redondeado del número flotante x. Para ser precisos, el valor conservado se redondeará al extremo más cercano al dígito anterior (cuatro se redondea hacia abajo, seis hacia arriba).

Para requisitos de alta precisión, no se recomienda usar esta función.


Sintaxis

La siguiente es la sintaxis del método round():

round( x [, n]  )

Parámetros

  • x -- Expresión numérica.
  • n -- Representa el número de decimales al que se redondeará x; el valor predeterminado es 0.

Valor de retorno

Devuelve el valor redondeado del número flotante x.

Ejemplo

A continuación se muestra un ejemplo del uso del método round():

Ejemplo

#!/usr/bin/python3

print ("round(70.23456) : ", round(70.23456))
print ("round(56.659,1) : ", round(56.659,1))
print ("round(80.264, 2) : ", round(80.264, 2))
print ("round(100.000056, 3) : ", round(100.000056, 3))
print ("round(-100.000056, 3) : ", round(-100.000056, 3))

La salida después de ejecutar el ejemplo anterior es:

round(70.23456) :  70
round(56.659,1) :  56.7
round(80.264, 2) :  80.26
round(100.000056, 3) :  100.0
round(-100.000056, 3) :  -100.0

Veamos un ejemplo dado por el sitio web oficial:

>>> round(2.675, 2) 
2.67

Según nuestra idea, el resultado debería ser 2.68, pero el resultado es 2.67, ¿por qué?

Esto está relacionado con la precisión de los números de punto flotante. Sabemos que los números de punto flotante no siempre se pueden expresar con precisión en la máquina, porque al convertirlos en una serie de 1 y 0 pueden tener infinitos dígitos, y la máquina ya ha realizado un truncamiento. Por lo tanto, el número 2.675 guardado en la máquina es un poco más pequeño que el número real. Esa pequeña diferencia hace que esté un poco más cerca de 2.67, por lo que al conservar dos decimales se aproxima a 2.67.

Python3 数字Números en Python3

Otras extensiones