我怎么能从壳内告诉壳处于什么模式?
我已经试着查看了平台模块,但它似乎只告诉您“用于可执行文件的位架构和链接格式”。我的二进制文件被编译为64位(我在OS X 10.6上运行),所以它似乎总是报告64位,即使我使用这里描述的方法强制32位模式。
我怎么能从壳内告诉壳处于什么模式?
我已经试着查看了平台模块,但它似乎只告诉您“用于可执行文件的位架构和链接格式”。我的二进制文件被编译为64位(我在OS X 10.6上运行),所以它似乎总是报告64位,即使我使用这里描述的方法强制32位模式。
当前回答
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)]
对于非编程解决方案,请查看活动监视器。它将64位进程的体系结构列为“Intel(64位)”。
在我的Centos Linux系统上,我做了以下操作: 1)启动Python解释器(我使用2.6.6) 2)运行如下代码:
import platform
print(platform.architecture())
它给了我
(64bit, 'ELF')
Platform.architecture()注释说:
注意: 在Mac OS X(也许还有其他平台)上,可执行文件可能是包含多种体系结构的通用文件。 为了获得当前解释器的“64位”,它更可靠 查询sys. xml文件。最大尺寸属性:
import sys
is_64bits = sys.maxsize > 2**32
对于32位,它将返回32,对于64位,它将返回64
import struct
print(struct.calcsize("P") * 8)