即使我使用的是64位,sys.maxint也会返回与32位系统对应的值

时间:2015-03-07 03:09:11

标签: python enthought canopy

我对系统架构知之甚少,刚刚开始学习Python。

在其中一个教程视频中,提到在解释器中运行sys.maxint将返回可用的最大整数。

还提到2147483647是对应于32位系统的整数。这是我运行sys.maxint时返回的整数。

我在64位操作系统上使用Enthought Canopy(64位)。确切地说,Windows 8。

有什么办法可以将sys.maxint值增加到与64位机器对应的值?

1 个答案:

答案 0 :(得分:2)

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支持bignums并且不会溢出。如果超过sys.maxint,性能会降低。