数学模块中的 ceil 函数问题
Problem with ceil function in math module
通过执行以下计算
p=math.ceil(57050*1.12)
我收到 63897。但是其他工具(例如 Excel)提供 63896。
我需要使用 ceil(四舍五入),因为该过程是更大模型的一部分,我无法在该模型中排除这个特定值 (57050)。
问题是我需要将当前模型从 Excel 导入到 Python 并且所有计算都提供相同的值非常重要。
我想知道是否有办法通过例如调整“ceil”的精度10 位小数。
我该如何调整它,或者我还能做些什么,让它不那么严重,这样它就不会为其他值带来问题?
预期结果:
63896
实际结果:
63897
基本上,如果您只想使小数点前 10 位相关,您可以执行如下操作:
def ceil(n):
return math.ceil(int(n*10**10)/10**10)
通过执行以下计算
p=math.ceil(57050*1.12)
我收到 63897。但是其他工具(例如 Excel)提供 63896。
我需要使用 ceil(四舍五入),因为该过程是更大模型的一部分,我无法在该模型中排除这个特定值 (57050)。 问题是我需要将当前模型从 Excel 导入到 Python 并且所有计算都提供相同的值非常重要。
我想知道是否有办法通过例如调整“ceil”的精度10 位小数。 我该如何调整它,或者我还能做些什么,让它不那么严重,这样它就不会为其他值带来问题?
预期结果: 63896
实际结果: 63897
基本上,如果您只想使小数点前 10 位相关,您可以执行如下操作:
def ceil(n):
return math.ceil(int(n*10**10)/10**10)