Jawaban:
Untuk float
melihat sys.float_info
:
>>> import sys
>>> sys.float_info
sys.floatinfo(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2
250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsil
on=2.2204460492503131e-16, radix=2, rounds=1)
Secara khusus, sys.float_info.max
:
>>> sys.float_info.max
1.7976931348623157e+308
Jika itu tidak cukup besar, selalu ada infinity positif :
>>> infinity = float("inf")
>>> infinity
inf
>>> infinity / 10000
inf
The long
jenis memiliki presisi terbatas , jadi saya pikir Anda hanya dibatasi oleh memori yang tersedia.
sys.float_info
tersedia mulai dari v2.6. Bagaimana dengan v2.3-5?
5e-324
inf
untuk semua hal python, dan float_info.max
sebagai solusi ketika yang sebelumnya tidak bekerja, misalnya time.sleep(float("inf"))
tidak diperbolehkan :(
sys.maxint bukan bilangan bulat terbesar yang didukung oleh python. Ini adalah integer terbesar yang didukung oleh tipe integer reguler python.
long
.
sys.maxint
bahkan tidak didefinisikan dalam Python 3, itu disebut sys.maxsize
, yang mungkin lebih disukai di Python 2 juga.
sys.maxsize
(diperkenalkan dengan Python 2.6) dan sys.maxint
dua hal yang berbeda. Yang pertama memberikan jumlah maksimum objek yang diizinkan dalam koleksi (misalnya, ukuran maksimum daftar, dikt, dll.), Dan sesuai dengan versi bertanda size_t
tipe C ; yang kedua adalah titik setelah itu int
jenis beralih ke long
, dan nilai maks C long
. Pada beberapa platform, kedua nilai berbeda: misalnya, pada Windows 64-bit, sys.maxsize
apakah 2**63-1
dan sys.maxint
sekarang 2**31-1
.
2**63-1
).
sys.maxint
dalam Python 3.