當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python sys.float_info用法及代碼示例

用法:

sys.float_info

一個命名元組,包含有關浮點類型的信息。它包含有關精度和內部表示的低級信息。這些值對應於“C”編程語言的標準頭文件float.h中定義的各種浮點常量;有關詳細信息,請參見 1999 ISO/IEC C 標準 [C99] 的第 5.2.4.2.2 節“浮點數類型的特征”。

屬性

float.h 宏

解釋

epsilon

DBL_EPSILON

1.0 與可表示為浮點數的大於 1.0 的最小值之間的差

另見math.ulp()

dig

DBL_DIG

可以在浮點數中忠實表示的十進製數字的最大數量;見下文

mant_dig

DBL_MANT_DIG

浮點精度:浮點數有效位中的 base-radix 位數

max

DBL_MAX

最大可表示的正有限浮點數

max_exp

DBL_MAX_EXP

最大整數 e 使得 radix**(e-1) 是可表示的有限浮點數

max_10_exp

DBL_MAX_10_EXP

最大整數 e 使得 10**e 在可表示的有限浮點數範圍內

min

DBL_MIN

最小可表示正數 normalized 浮點數

使用 math.ulp(0.0) 獲得最小的正數 denormalized 可表示的浮點數。

min_exp

DBL_MIN_EXP

最小整數 e 使得 radix**(e-1) 是標準化浮點數

min_10_exp

DBL_MIN_10_EXP

最小整數 e 使得 10**e 是標準化浮點數

radix

FLT_RADIX

index 表示的基數

rounds

FLT_ROUNDS

表示用於算術運算的舍入模式的整數常量。這反映了解釋器啟動時係統FLT_ROUNDS 宏的值。有關可能值及其含義的解釋,請參見 C99 標準的第 5.2.4.2.2 節。

屬性sys.float_info.dig 需要進一步解釋。如果 s 是表示最多具有 sys.float_info.dig 有效數字的十進製數的任何字符串,則將 s 轉換為浮點數並再次返回將恢複表示相同十進製值的字符串:

>>> import sys
>>> sys.float_info.dig
15
>>> s = '3.14159265358979'    # decimal string with 15 significant digits
>>> format(float(s), '.15g')  # convert to float and back -> same value
'3.14159265358979'

但是對於具有超過 sys.float_info.dig 有效數字的字符串,這並不總是正確的:

>>> s = '9876543211234567'    # 16 significant digits is too many!
>>> format(float(s), '.16g')  # conversion changes value
'9876543211234568'

相關用法


注:本文由純淨天空篩選整理自python.org大神的英文原創作品 sys.float_info。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。