首先,我认为这个问题不是Detect 64bit OS (windows) in Python的重复,因为在我看来它并没有得到彻底的回答。
唯一接近的答案是:
使用
但是:
Windows环境变量
如何使用
关于
链接http://docs.python.org/library/sys.html#sys.getwindowsversion将我们带到http://msdn.microsoft.com/en-us/library/ms724451%28VS.85%29.aspx,但我没有看到与架构(32位/64位)有关的内容。此外,返回的元组中的平台元素似乎独立于架构。
最后一点说明:我正在寻找一个同时使用Python 2.5和从Windows XP开始的Windows版本的解决方案。
谢谢!
编辑:
相关信息在这里可用
http://msdn.microsoft.com/en-us/library/ms724340%28v=VS.85%29.aspx
但是我如何用Python获取它?
编辑2: 在64位Windows上,使用32位Python解释器:
唯一接近的答案是:
使用
sys.getwindowsversion()
或PROGRAMFILES(X86)的存在(if 'PROGRAMFILES(X86)' in os.environ
)但是:
Windows环境变量
PROGRAMFILES(X86)
可靠吗?我担心任何人都可以创建它,即使它不存在于系统中。如何使用
sys.getwindowsversion()
以获取架构?关于
sys.getwindowsversion()
:链接http://docs.python.org/library/sys.html#sys.getwindowsversion将我们带到http://msdn.microsoft.com/en-us/library/ms724451%28VS.85%29.aspx,但我没有看到与架构(32位/64位)有关的内容。此外,返回的元组中的平台元素似乎独立于架构。
最后一点说明:我正在寻找一个同时使用Python 2.5和从Windows XP开始的Windows版本的解决方案。
谢谢!
编辑:
相关信息在这里可用
http://msdn.microsoft.com/en-us/library/ms724340%28v=VS.85%29.aspx
但是我如何用Python获取它?
编辑2: 在64位Windows上,使用32位Python解释器:
- os.environ["PROCESSOR_ARCHITECTURE"]返回
- 'x86'
- platform.architecture()返回
- ('32bit', 'WindowsPE')