2012-09-17 41 views
2

我试图在Windows 7 64位虚拟机上安装64位版本的python。我从here得到了Python 2.7.3 Windows X86-64安装程序。安装工作简单的,但是当我开始蟒蛇,我越来越:Windows 7上的python x86-64安装程序

Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win 32 

如果我尝试:

import sys 
sys.maxint 
2147483647 

这是不是真的什么,我会从一个64位的蟒蛇期待,和我从我的fedora 64位安装中得到的不同:

9223372036854775807 

任何想法?

问候, 波格丹

+0

我猜的差异是由于事实上,这两个版本的Python会被编译在不同的平台。 –

+0

但是,msi安装程序是来自python.org的Windows AMD64/Intel 64/X86-64二进制文件,因此如何才能看起来只使用32位? – Bogdan

回答

1

这是因为Windows 64-bit ABI is different from Linux

Python实现使用Python int类型的C long类型,并且C在64位Windows上仍然只使用32位宽的C long

intobject.h在Python:

typedef struct { 
    PyObject_HEAD 
    long ob_ival; 
} PyIntObject;