¿Cuáles son los posibles valores de retorno del siguiente comando?
import sys
print sys.platform
Sé que hay muchas posibilidades, por lo que me interesan principalmente las "principales" (Windows, Linux, Mac OS)
¿Cuáles son los posibles valores de retorno del siguiente comando?
import sys
print sys.platform
Sé que hay muchas posibilidades, por lo que me interesan principalmente las "principales" (Windows, Linux, Mac OS)
Respuestas:
┍━━━━━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━━━━━┑
│ System │ Value │
┝━━━━━━━━━━━━━━━━━━━━━┿━━━━━━━━━━━━━━━━━━━━━┥
│ Linux │ linux or linux2 (*) │
│ Windows │ win32 │
│ Windows/Cygwin │ cygwin │
│ Windows/MSYS2 │ msys │
│ Mac OS X │ darwin │
│ OS/2 │ os2 │
│ OS/2 EMX │ os2emx │
│ RiscOS │ riscos │
│ AtheOS │ atheos │
│ FreeBSD 7 │ freebsd7 │
│ FreeBSD 8 │ freebsd8 │
│ FreeBSD N │ freebsdN │
│ OpenBSD 6 │ openbsd6 │
┕━━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━━┙
(*) Antes de Python 3.3, el valor para cualquier versión de Linux es siempre linux2
; después, lo es linux
.
macOS
sistemas actuales ? ¿Todavía resuelven darwin
?
Mac OS X (10.4, 10.5, 10.7, 10.8):
darwin
Linux (kernel 2.6):
linux2
Windows XP de 32 bits:
win32
Se han comprobado las versiones entre paréntesis; es probable que otras versiones / versiones más nuevas sean iguales
darwin
, todos los kernels de linux 2.x lo serán linux2
y Windows será win32 o win64 ... pero no lo he comprobado
platform.system()
puede ser una solución menos confusa ("Windows" frente a "Linux").
Como han indicado otros, sys.platform se deriva del nombre que el proveedor del sistema le da a su sistema. Sin embargo, Python también agrega plat- a sys.path, por lo que puede ver todos los directorios plat- * en la distribución de Python.
Esto te da la lista
aix3 aix4 atheos beos5 darwin freebsd2 freebsd3 freebsd4 freebsd5 freebsd6 freebsd7 genérico irix5 irix6 linux2 mac netbsd1 next3 os2emx riscos sunos5 unixware7
Por supuesto, sys.platform puede tener valores adicionales cuando Python se compila en un sistema para el que no se ha creado un directorio específico de la plataforma.
De aqui .
win32
, os2
,unknown
A partir del 29 de diciembre de 2013, OS X 10.9.1 Mavericks todavía tiene la etiqueta Darwin.