Python-如何确定我的系统可以处理的最大/最小整数/长整型/浮点数/复数



规格: Python 3.3.1

我试图做的是:">使用Python,确定系统可以处理的最大和最小的整数,多边形,浮点数和复数。

做了什么:我浏览了Python的数学模块以及与数学和数字相关的所有内置函数,但找不到一种方法。我也尝试了类似max(range(0,))的东西,但它返回ValueError: max() arg is an empty sequence错误。

问题:如何确定我的系统可以使用 Python 处理的最大/最小整数/长整型/浮点数/复数?作为一个完全的初学者,我知道我一定错过了什么,但我尝试过,但无法弄清楚。感谢您的帮助!

python 数字限制(例如存在任何限制(在 sys 模块上可用:

  • sys.float_info 是一个命名元组,对您的平台具有浮点限制。浮点数由指数和精度组成;您必须更准确地说明此处最大数字的含义;使用中具有最大指数和全精度的数字是 sys.float_info.max

  • sys.int_info ; 与其说是
  • 限制,不如说是实现细节;您应该能够从中估计出可能的最大整数。Python 整数仅受可用内存的限制。

  • sys.maxsize ;平台字的大小和对列表和元组等的限制。

因此,对于整数,基本上对最大值和最小值存在限制。这取决于您的进程可以使用多少内存,以及您的进程已经将多少内存用于其他事情。

在 Python 3 中,

不再有单独的 long 类型,但在 Python 2 中,sys.maxsize + 1必须是一个long,就像 -sys.maxsize - 2 一样。在这两个极端之间是可能的"短"整数的范围。

对于复数,排序要多一点。反正很复杂。复数有实数和虚分量,两者都是浮点数。你猜怎么着?这些是 python 浮点数,上面已经有它们的极限信息:

>>> type(1j)
<type 'complex'>
>>> type(1j.real)
<type 'float'>
>>> type(1j.imag)
<type 'float'>

sys.float_info为浮点值提供所需的信息。

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

Python 3 对整数没有上限或下限,也没有对任意复数进行排序的数学定义(尽管两个复数的实部或虚部可以单独排序(。

最新更新