Python math.fsum() 方法



Python 的 math.fsum() 方法用於計算一個可迭代物件(例如 列表元組)中浮點數的總和。它可以減輕使用內建 + 運算子將大量浮點值加在一起時可能發生的精度損失。

例如,如果您有一系列浮點數 [0.1, 0.2, 0.3],則 math.fsum([0.1, 0.2, 0.3]) 方法將返回比標準 sum([0.1, 0.2, 0.3]) 更準確的結果,後者可能會由於浮點運算的精度限制而出現舍入誤差。

語法

以下是 Python math.fsum() 方法的基本語法:

math.fsum(iterable)

引數

此方法接受一個可迭代物件(例如列表、元組或任何其他可迭代物件)作為引數,該物件包含您想要計算總和的浮點數。

返回值

該方法返回一個浮點數,表示可迭代物件中數字的總和。

示例 1

在以下示例中,我們使用 math.fsum() 方法計算數字 "[0.1, 0.2, 0.3]" 的總和:

import math
numbers = [0.1, 0.2, 0.3]
result = math.fsum(numbers)
print("The result obtained is:",result)  

輸出

獲得的輸出如下:

The result obtained is: 0.6

示例 2

在這裡,我們使用生成器表示式為 i 從 "1 到 5" 生成 0.1/i 的數字。然後,我們使用 math.fsum() 方法計算這些數字的總和:

import math
numbers = (0.1 / i for i in range(1, 6))
result = math.fsum(numbers)
print("The result obtained is:",result)  

輸出

以下是上述程式碼的輸出:

The result obtained is: 0.22833333333333333

示例 3

如果我們將整數作為引數傳遞給 fsum() 方法,它將返回一個浮點數:

import math
numbers = [1, 2, 3, 4, 5]
result = math.fsum(numbers)
print("The result obtained is:",result)  

輸出

我們得到如下所示的輸出:

The result obtained is: 15.0

示例 4

在此示例中,我們使用 math.fsum() 方法計算空列表的總和:

import math
numbers = []
result = math.fsum(numbers)
print("The result obtained is:",result)  

輸出

產生的結果如下所示:

The result obtained is: 0.0
python_maths.htm
廣告