我怎么能从壳内告诉壳处于什么模式?
我已经试着查看了平台模块,但它似乎只告诉您“用于可执行文件的位架构和链接格式”。我的二进制文件被编译为64位(我在OS X 10.6上运行),所以它似乎总是报告64位,即使我使用这里描述的方法强制32位模式。
我怎么能从壳内告诉壳处于什么模式?
我已经试着查看了平台模块,但它似乎只告诉您“用于可执行文件的位架构和链接格式”。我的二进制文件被编译为64位(我在OS X 10.6上运行),所以它似乎总是报告64位,即使我使用这里描述的方法强制32位模式。
当前回答
打开python控制台:
import platform
platform.architecture()[0]
它应该显示'64bit'或'32bit'根据您的平台。
或者(对于OS X二进制文件):
import sys
sys.maxsize > 2**32
# it should display True in case of 64bit and False in case of 32bit
其他回答
C:\Users\xyz>python
Python 2.7.6 (default, Nov XY ..., 19:24:24) **[MSC v.1500 64 bit (AMD64)] on win
32**
Type "help", "copyright", "credits" or "license" for more information.
>>>
在CMD中点击python后
当在终端/命令行中启动Python解释器时,你可能还会看到这样一行:
win32上的Python 2.7.2(默认,2011年6月12日,14:24:46)[MSC v.1500 64位(AMD64)]
其中[MSC v.1500 64位(AMD64)]表示64位Python。 适用于我的特定设置。
Windows 10操作系统
打开cmd终端,输入如下图所示的>python启动python解释器
如果解释器信息在开始时包含AMD64,则为64位,否则为32位。
import sys
print(sys.version)
3.5.1 (v3.5.1:37a07cee5969, 2015年12月6日01:54:25)[MSC .1900 64位(AMD64)]
根据abe32的回答,
import sys
n_bits = 32 << bool(sys.maxsize >> 32)
N_bits将有32或64位。