Ответы:
Для float
взгляда на 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)
В частности, sys.float_info.max
:
>>> sys.float_info.max
1.7976931348623157e+308
Если этого недостаточно, всегда есть положительная бесконечность :
>>> infinity = float("inf")
>>> infinity
inf
>>> infinity / 10000
inf
long
Тип имеет неограниченную точность , поэтому я думаю , что вы ограничены только объемом доступной памяти.
sys.float_info
, доступно начиная с v2.6. Как насчет v2.3-5?
5e-324
inf
для всего Python, и float_info.max
как обходной путь, когда ранее не работает, например time.sleep(float("inf"))
, не допускается :(
sys.maxint - не самое большое целое число, поддерживаемое python. Это наибольшее целое число, поддерживаемое обычным целочисленным типом python.
long
.
sys.maxint
даже не определен в Python 3, он называется sys.maxsize
, что, вероятно, также предпочтительнее в Python 2.
sys.maxsize
(введено в Python 2.6) и sys.maxint
это две разные вещи. Первый дает максимальное количество объектов, разрешенных в коллекции (например, максимальный размер списка, dict и т. Д.), И соответствует подписанной версии типа C size_t
; вторая точка , после чего int
тип переключается long
, и максимальное значение C long
. На некоторых платформах эти два значения различны: например, в 64-битной Windows sys.maxsize
есть 2**63-1
и sys.maxint
есть 2**31-1
.
2**63-1
).
sys.maxint
Python 3 нет.