Odpowiedzi:
Dla float
rzucić okiem na 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)
W szczególności sys.float_info.max
:
>>> sys.float_info.max
1.7976931348623157e+308
Jeśli to nie jest wystarczająco duże, zawsze istnieje nieskończoność dodatnia :
>>> infinity = float("inf")
>>> infinity
inf
>>> infinity / 10000
inf
long
Typ ma nieograniczonej precyzji , więc myślę, że jesteś ograniczony tylko pojemnością pamięci.
sys.float_info
jest dostępny od wersji 2.6. A co z wersją 2.3-5?
5e-324
inf
dla wszystkich rzeczy w Pythonie i float_info.max
jako obejście, gdy wcześniejsza nie działa, na przykład time.sleep(float("inf"))
jest niedozwolona :(
sys.maxint nie jest największą liczbą całkowitą obsługiwaną przez Pythona. Jest to największa liczba całkowita obsługiwana przez zwykły typ liczby całkowitej w Pythonie.
long
.
sys.maxint
nie jest nawet zdefiniowany w Pythonie 3, jest wywoływany sys.maxsize
, co prawdopodobnie będzie preferowane również w Pythonie 2.
sys.maxsize
(wprowadzone w Pythonie 2.6) i sys.maxint
to dwie różne rzeczy. Pierwsza podaje maksymalną liczbę obiektów dozwolonych w kolekcji (np. Maksymalny rozmiar listy, dykt itp.) I odpowiada podpisanej wersji size_t
typu C ; drugi punkt po czym int
typ włącza się long
i jest maksymalna wartość C long
. Na niektórych platformach te dwie wartości są różne: np. W 64-bitowym systemie Windows sys.maxsize
jest 2**63-1
i sys.maxint
jest 2**31-1
.
2**63-1
).
sys.maxint
w Pythonie 3.