Определить архитектуру платформы независимо от исполняемого файла Python
Существует множество способов определить, является ли исполняемый файл Python 32- или 64-битной программой. Но есть ли способ определить, поддерживает ли машина x64? Все, что я нашел результаты в 32-разрядной версии для Python x86 на 64-разрядной машине.
Одним из способов является использование sys.maxsize > (1 << 32)
, но это идет с проблемой, упомянутой выше.
Редактировать: первая ссылка Himal уже предоставляет несколько решений для Windows, проверяя PROGRAMFILES
переменная окружения. Я мог тогда видеть, содержит ли это строку (x86
) `.
Кроссплатформенное решение было бы хорошо, хотя. platform.platform()
это не решение, я попробовал это, прежде чем уже задал вопрос. Он возвращает 32-битный на 64-битной Windows при использовании 32-битного исполняемого файла Python.