Python 在 Windows 8.1 64 位上错误地检测到 32 位系统

Python incorrectly detects 32-bit system on Windows 8.1 64-bit

PS C:\Users\************> C:\Python27\python.exe
Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import platform
>>> platform.architecture()
('64bit', 'WindowsPE')

注意 "on win32" 部分(在“[MSC v.1500 64 位 (AMD64)] on win32”中)。

"This PC" -> 属性还显示 windows 是 64 位。 当我尝试安装不同的 Python3 版本时也是如此。

为什么按钮检测 OS 32 位不正确?这会阻止只能在 64 位上工作的模块工作。

更新:阅读 https://groups.google.com/forum/#!topic/glazier-discuss/Gyrm2IsNhDA - Windows PE 可能会导致问题。

win32 并不一定意味着您的 windows 是一个 32bit 系统,这意味着您使用的是 windows 操作系统,它只是留在那里历史原因。而你 This PC 上的属性足以确认它是 64 位 windows。没有 win64 顺便说一句。

您要找的是这条线,
[MSC v.1500 64 bit (AMD64)] - 这意味着它是使用 64 位的 MSVC 编译器构建的

为了更可靠地检查您的解释器是 运行 作为 32 位还是 64 位试试这个,

import sys
print(sys.maxsize > 2**32) # must return TRUE for 64bit