2012-07-31 24 views
2

在python2.7 32或64位这很简单,只需要导入的lib平台。但我怎么能看到我的Windows是32位还是64位?我有一个系统工作,建立python2.2并不能找到一个办法做到这一点:(如何检查Windows是否是Python2.2

从那里反向移植的任何建议吗?

+1

的可能重复[我如何确定我的Python壳在32位或64位模式下运行?](http://stackoverflow.com/questions/1405913/how-do-i-determine-if-my-python -shell-is-execution-in-32bit-or-64bit-mode) – 2012-07-31 14:36:39

+0

出于好奇,你为什么使用Python 2.2?它已经超过10年了,新版本和旧版本一样自由。 – 2012-07-31 14:38:32

+0

@MartijnPieters:检查解释器是以32位还是64位模式构建的。它没有告诉你有关操作系统的很多信息。 – 2012-07-31 14:39:44

回答

7

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', '') 
+0

工作良好,感谢帮助人员:D – 2012-07-31 16:51:52

0

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

import sys 
print sys.maxint 

,并检测它的32/64位被sys.maxint

说明:如果您在64位计算机上运行32位Python,则此方法可能会失败。

+0

是不是依赖于Python本身的构建而不是操作系统? – 2012-07-31 15:53:10

+0

@NoctisSkytower是的。我自己认为这是一个“好的,能不能更糟?”的答案。 – starrify 2012-07-31 15:57:34