Python math.frexp() 方法



Python 的 math.frexp() 方法用於將浮點數分解為其規範化分數和指數。

  • 給定一個浮點數 xmath.frexp(x) 方法返回一個元組 "(m, e)",其中 "m" 是規範化分數(也稱為有效數或尾數),"e" 是指數。
  • 規範化分數 "m" 是一個浮點數,表示數字 x 的分數部分,其值大於等於 0.5 且小於 1.0。
  • 指數 "e" 是一個整數,表示將規範化分數乘以 2 的多少次冪才能得到原始數字 x。

數學上,對於非零浮點數 x,它可以表示為:

x = m × 2e

其中,"m" 是規範化分數,"e" 是指數。

語法

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

math.frexp(x)

引數

此方法接受一個數值作為引數,表示要分解的浮點數。

返回值

該方法返回一個元組 "(m, e)",其中 "m" 是表示規範化分數的浮點數,"e" 是表示指數的整數。

分數 "m" 滿足條件 "0.5 <= abs(m) < 1.0",並且 "x" 近似等於 "m * 2**e"。如果 "x" 為零,則 "m" 和 "e" 都為零。如果 "x" 為 NaN 或無窮大,則 "m" 和 "e" 都為 NaN 或無窮大。

示例 1

在下面的示例中,我們使用 frexp() 方法計算浮點數 10 的尾數和指數:

import math
mantissa, exponent = math.frexp(10)
print("The result obtained is:",mantissa, exponent) 

輸出

獲得的輸出如下:

The result obtained is: 0.625 4

示例 2

在這裡,我們計算負浮點數 "-5" 的尾數和指數:

import math
mantissa, exponent = math.frexp(-5)
print("The result obtained is:",mantissa, exponent) 

輸出

以上程式碼的輸出如下:

The result obtained is: -0.625 3

示例 3

現在,我們使用 frexp() 方法計算分數的尾數和指數:

import math
mantissa, exponent = math.frexp(0.75)
print("The result obtained is:",mantissa, exponent)  

輸出

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

The result obtained is: 0.75 0

示例 4

在這個例子中,我們計算浮點數 0 的尾數和指數。由於 0 沒有大小,尾數和指數都為 0:

import math
mantissa, exponent = math.frexp(0)
print("The result obtained is:",mantissa, exponent)  

輸出

產生的結果如下所示:

The result obtained is: 0.0 0
python_maths.htm
廣告