【问题标题】:How to check if Windows is 32 or 64 bits on Python2.2如何在 Python2.2 上检查 Windows 是 32 位还是 64 位
【发布时间】:2012-07-29 08:45:00
【问题描述】:

在python2.7中很简单,只需要导入lib平台即可。但是我如何查看我的 Windows 是 32 位还是 64 位?我在 python2.2 中使用系统构建,但找不到这样做的方法:(

有什么建议吗?

【问题讨论】:

  • 只是出于好奇,您为什么使用 Python 2.2?它已有 10 多年的历史,新版本与旧版本一样免费。
  • @MartijnPieters:检查解释器是在 32 位还是 64 位模式下构建的。它并没有告诉你太多关于操作系统的信息。
  • :/ 因为我在一家仍然在我们的主要应用程序上使用 python2.2 的公司工作,所以我知道这很糟糕:/。 @larsmans
  • @larsmans:你可能在 64 位平台上有一个 32 位的 Python 解释器,但你不能反过来让它工作。因此,两者通常相互关联。

标签: python windows operating-system x86-64


【解决方案1】:

platform modulesource code 信息丰富。

从那里向后移植以确定 Windows 平台上的机器架构,它将使用:

import os

def machine():
    try:
        return os.uname()[-1]
    except AttributeError:
        if "PROCESSOR_ARCHITEW6432" in os.environ:
            return os.environ.get("PROCESSOR_ARCHITEW6432", '')
        else:
            return os.environ.get('PROCESSOR_ARCHITECTURE', '')

【讨论】:

    【解决方案2】:

    在 Python 2.x 中你可以这样做:

    import sys
    print sys.maxint  
    

    并通过sys.maxint 检测它是否为 32/64 位。

    注意:如果您在 64 位机器上运行 32 位 Python,此方法可能会失败。

    【讨论】:

    • 这不依赖于 Python 本身的构建而不依赖于操作系统吗?
    • @NoctisSkytower 确实如此。我自己认为这是一个well, can it be worse? 的答案。
    猜你喜欢
    • 2011-02-10
    • 2014-07-04
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 2014-08-04
    • 1970-01-01
    • 2021-12-10
    • 2014-12-24
    相关资源
    最近更新 更多