Articles of punto flotante de

Redondeo predeterminado del formato Python al formatear el número flotante

Estoy tratando de resolver algunos problemas de punto flotante en mi código en Python 2.7.10. Al probar me he encontrado con un comportamiento extraño con el método de format : print “{}”.format(0.3000000000004) # 13 decimals Impresiones: 0.3 Pero: print “{}”.format(0.300000000004) # 12 decimals Impresiones: 0.300000000004 Como no estoy especificando el formato, ¿por qué redondea el […]

¿Por qué 1 // 0.1 == 9.0?

En Python 2.7 y 3.x , ¿por qué la división de enteros me da un número no correcto al dividir por un número 0 < x < 1 ? Los números negativos -1 < x < 0 incluso funcionan correctamente: >>> 1//.1 9.0 >>> 1//-.1 -10.0 Entiendo que la división entera con un número negativo […]

Engañar a numpy / python para representar números muy grandes y muy pequeños

Necesito calcular la integral de la siguiente función dentro de rangos que comienzan tan bajos como -150 : import numpy as np from scipy.special import ndtr def my_func(x): return np.exp(x ** 2) * 2 * ndtr(x * np.sqrt(2)) El problema es que esta parte de la función. np.exp(x ** 2) tiende hacia el infinito; recibo […]

¿Cómo puedo obtener los primeros n bits del número de punto flotante como entero en python?

Supongamos que tengo 0.625 porque el punto flotante es 0b.101 , así que si quiero los primeros dos bits de eso como un entero, es decir, 0b10 = 2 , ¿cómo puedo lograr esto en Python? He intentado llevar el número a una potencia de 2 y convertir a un int, así que si quiero […]

¿Por qué mi simulación de astronomía es inexacta?

He hecho un progtwig que simula el movimiento de cuerpos en el sistema solar, sin embargo, tengo varias imprecisiones en mis resultados. Creo que probablemente tenga algo que ver con mi método de integración. tl; dr, hay una ligera diferencia entre la posición y la velocidad de la Tierra entre mi simulación y los datos […]

ValueError: literal inválido para float () en Python

A todos: Tengo curiosidad por saber si alguien me puede ayudar a entender el error: ValueError: literal no válido para float (). Obtengo esto cuando paso un archivo de texto a una lista y luego trato de convertir esta lista a valores flotantes. a = open(“input.txt”,”r”) lines = a.readlines() b = map(float, lines) Lo que […]

C ++ vs Python precision

Probando el problema de encontrar los primeros k dígitos de un num ^ num, escribí el mismo progtwig en C ++ y Python C ++ long double intpart,num,f_digit,k; cin>>num>>k; f_digit= pow(10.0,modf(num*log10(num),&intpart)+k-1); cout<<f_digit; Pitón (a,b) = modf(num*log10(num)) f_digits = pow(10,b+k-1) print f_digits Entrada 19423474 9 Salida C++ > 163074912 Python > 163074908 Revisé los resultados de […]

¿Por qué está sys.maxint <(sys.maxint – 100 + 0.01) en Python?

¿Por qué está sys.maxint <(sys.maxint – 100 + 0.01) en Python?

Test de afirmaciones para tuplas con flotadores.

Tengo una función que devuelve una tupla que, entre otras cosas, contiene un valor flotante. Usualmente uso assertAlmostEquals para compararlos, pero esto no funciona con las tuplas. Además, la tupla también contiene otros tipos de datos. Actualmente estoy afirmando cada elemento de la tupla individualmente, pero eso se vuelve demasiado para una lista de tales […]

¿Se puede usar una variable en Python para definir decimales?

Estoy familiarizado con la convención de usar %.2f para establecer dos lugares decimales para un flotante, pero ¿es posible de alguna manera cambiar el número a una variable para que el usuario pueda indicar el número de lugares decimales mostrados?