我怎么能从壳内告诉壳处于什么模式?

我已经试着查看了平台模块,但它似乎只告诉您“用于可执行文件的位架构和链接格式”。我的二进制文件被编译为64位(我在OS X 10.6上运行),所以它似乎总是报告64位,即使我使用这里描述的方法强制32位模式。


当前回答

在命令行中执行python -VV。它应该返回版本。

其他回答

在命令行中执行python -VV。它应该返回版本。

对于非编程解决方案,请查看活动监视器。它将64位进程的体系结构列为“Intel(64位)”。

根据abe32的回答,

import sys
n_bits = 32 << bool(sys.maxsize >> 32)

N_bits将有32或64位。

Platform.architecture()注释说:

注意: 在Mac OS X(也许还有其他平台)上,可执行文件可能是包含多种体系结构的通用文件。 为了获得当前解释器的“64位”,它更可靠 查询sys. xml文件。最大尺寸属性:

import sys
is_64bits = sys.maxsize > 2**32

当在终端/命令行中启动Python解释器时,你可能还会看到这样一行:

win32上的Python 2.7.2(默认,2011年6月12日,14:24:46)[MSC v.1500 64位(AMD64)]

其中[MSC v.1500 64位(AMD64)]表示64位Python。 适用于我的特定设置。