所有的sys.maxint返回对应于一个32位的系统,即使我使用一个64位的值(sys.maxint

2019-10-22 04:43发布

我不是系统架构非常熟悉,而且刚开始学习Python的。

在本教程的视频之一提到,在解释器中执行所有的sys.maxint将返回提供给您最大的整数。

也有人提到,2147483647是对应于一个32位系统中的整数。 这是当我运行所有的sys.maxint我返回的整数。

我在64位操作系统使用Enthought冠(64位)。 Windows 8中,要精确。

有没有什么办法可以增加所有的sys.maxint值一个对应一个64位的机器?

Answer 1:

Python 2.7.9 (default, Dec 10 2014, 12:28:03) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import platform
>>> platform.architecture()
>>> ('64bit', 'WindowsPE')
>>> import sys
>>> sys.maxint
>>> 2147483647
>>> sys.maxint+1
>>> 2147483648L

似乎是在Windows上的限制。

我不会担心,因为Python支持大数,不会溢出。 但如果你超过性能会降低sys.maxint



文章来源: sys.maxint returns a value corresponding to a 32 bit system even though I am using a 64 bit