Redondear a dígitos significativos en Python
-
Utilice la función
round()
para redondear un número al dígito significativo dado en Python -
Utilice el módulo
math
para redondear un número al dígito significativo dado en Python - Use el formato de cadena para redondear un número al dígito significativo dado en Python
-
Utilice el módulo
sigfig
para redondear un número al dígito significativo dado en Python
Redondear el número significa reemplazar un número con un valor aproximado cercano a él. También podemos redondear números a la cifra significativa requerida.
En este artículo, redondearemos un número a un dígito significativo específico en Python.
Utilice la función round()
para redondear un número al dígito significativo dado en Python
La función round()
redondea los valores flotantes dados al entero más cercano o la posición decimal especificada.
Podemos usar un número negativo para redondear el entero al valor piso significativo asignándolo a la función round()
. Este número negativo que se especificará depende de los dígitos significativos requeridos.
Por ejemplo, si deseamos redondear a un dígito significativo, especificamos el valor como (1 dígitos en total) en la función round()
.
Consulte el siguiente código.
x = round(1342, -3)
print(x)
Producción :
1000
Utilice el módulo math
para redondear un número al dígito significativo dado en Python
Este método es una mejora de la función discutida anteriormente. Podemos crear una función simple definida por el usuario para que esto sea más conveniente. No tendremos que especificar el número negativo en la función round()
de este método. Reemplazaremos esto usando una combinación de la función math.floor()
y la función math.log10()
.
Vea el código a continuación.
from math import log10, floor
def round_it(x, sig):
return round(x, sig - int(floor(log10(abs(x)))) - 1)
print(round_it(1324, 1))
Producción :
1000
Use el formato de cadena para redondear un número al dígito significativo dado en Python
En Python, el especificador %g
en cadenas formatea un flotante redondeado a una cifra significativa especificada. Si la magnitud del número final es enorme, lo muestra en notación científica.
Este método devuelve una cadena. Entonces, tenemos que convertir el número de cadena de nuevo a un valor entero o flotante después de formatearlo.
Por ejemplo,
x = float("%.1g" % 1324)
print(x)
Producción :
1000.0
Utilice el módulo sigfig
para redondear un número al dígito significativo dado en Python
El módulo sigfig
es la mejor opción para redondear los números a un dígito significativo, ya que minimiza la molestia de crear una función definida por el usuario y simplifica el código.
Podemos especificar el número de dígitos significativos en la función round()
de este módulo.
Vea el siguiente ejemplo.
from sigfig import round
print(round(1324, sigfigs=1))
Producción :
1000