Python 如何创建一个公差,使会话中的所有低值变为零?

Python 如何创建一个公差,使会话中的所有低值变为零?,python,sympy,Python,Sympy,我做了一些计算,得到了像数字*e-17这样的值,但我想把所有这些小值都变成零 有没有一种方法可以使整个程序中的低值变为零? 顺便说一句,我正在使用sympy 非常感谢,您可以使用math.isclose测试接近零的程度,并相应地设置值: import math value = 0 if math.isclose(value, 0) else value 这是一个“XY问题”:Symphy的正确解决方案是不要从这些小数字开始。为此,请使用符号常量而不是数字常量,如下所示

我做了一些计算,得到了像数字*e-17这样的值,但我想把所有这些小值都变成零

有没有一种方法可以使整个程序中的低值变为零? 顺便说一句,我正在使用sympy


非常感谢,

您可以使用
math.isclose
测试接近零的程度,并相应地设置值:

import math

value = 0 if math.isclose(value, 0) else value

这是一个“XY问题”:Symphy的正确解决方案是不要从这些小数字开始。为此,请使用符号常量而不是数字常量,如下所示