2010-07-10 25 views

cevap

13
>>> import sys 
>>> sys.float_info.max 
1.7976931348623157e+308 

Aslında, bir kayan noktaya çok büyük bir tamsayı dönüştürmeye çalışırsanız, bir istisna kaldırılır.

>>> float(2 * 10**308) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
OverflowError: Python int too large to convert to C double 
+1

Pedallar için: kenar durumlarını önemsiyorsanız, ikinci yöntem ('deneyin ve gör') biraz daha güvenilirdir. Sys.float_info.max'dan daha büyük tamsayılar vardır (sadece küçük bir miktar olsa da). Tipik bir makinede 'int (sys.float_info.max)' '2 ** 1024 - 2 ** 971''dir, ancak 2 ** 1024 - 2 ** 970 - 1' arası ve dahil olmak üzere tam sayıları dönüştürülebilir. OverflowError'ı yükseltmeden. –

İlgili konular