tutorial - Qué comando usar para verificar si Python es de 64 bits o de 32 bits
manual de python 3.6 en español pdf (3)
No puedo encontrar ningún comando para verificar si mi python está compilado para un sistema de 32 bits o para un sistema de 64 bits.
Lo intenté
pitón
Y solo dice la versión.
Además, cuando voy al sitio de descarga de Python, tienen una versión de Python para Linux pero dos versiones para Mac, es decir, 32 bits y 64 bits.
Primero, abre cmd y escribe
$ python
Luego, escriba las siguientes dos líneas
>>> import platform
>>> platform.architecture()
Para Python 2.6 y superiores, puede usar sys.maxsize
como se documenta here :
import sys
is_64bits = sys.maxsize > 2**32
ACTUALIZACIÓN: Me doy cuenta de que realmente no respondí la pregunta planteada. Si bien la prueba anterior le indica con precisión si el intérprete se está ejecutando en una arquitectura de 32 bits o de 64 bits, no responde ni puede responder a la pregunta de cuál es el conjunto completo de arquitecturas para las que se construyó este intérprete. y podría ejecutarse. Como se señaló en la pregunta, esto es importante, por ejemplo, con los ejecutables universales de Mac OS X, donde un archivo ejecutable puede contener código para varias arquitecturas. Una forma de responder a esta pregunta es usar el comando de file
sistema operativo. En la mayoría de los sistemas informará las arquitecturas compatibles de un archivo ejecutable. Aquí se explica cómo hacerlo en una línea desde una línea de comandos de shell en la mayoría de los sistemas:
file -L $(python -c ''import sys; print(sys.executable)'')
Usando el sistema predeterminado Python en OS X 10.6, la salida es:
/usr/bin/python: Mach-O universal binary with 3 architectures
/usr/bin/python (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/python (for architecture i386): Mach-O executable i386
/usr/bin/python (for architecture ppc7400): Mach-O executable ppc
En un sistema Linux:
/usr/bin/python: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, stripped
Por cierto, aquí hay un ejemplo de por qué la platform
no es confiable para este propósito. Nuevamente usando el sistema Python en OS X 10.6:
$ arch -x86_64 /usr/bin/python2.6 -c ''import sys,platform; print platform.architecture()[0], sys.maxsize > 2**32''
64bit True
$ arch -i386 /usr/bin/python2.6 -c ''import sys,platform; print platform.architecture()[0], sys.maxsize > 2**32''
64bit False
import platform
platform.architecture()[0]
#''32bit''