Question

  

Double possible:
   Python: sur quel système d'exploitation suis-je exécuté?

Comme le titre le dit, comment puis-je trouver le système d'exploitation actuel en python?

Était-ce utile?

La solution

J'utilise habituellement sys.platform pour obtenir la plate-forme. sys.platform fera la distinction entre linux, les autres unix et OS X, tandis que os.name est "" posix " pour tous.

Pour des informations beaucoup plus détaillées, utilisez le module de la plateforme . Il contient des fonctions multiplates-formes qui vous donneront des informations sur l’architecture de la machine, les versions du système d’exploitation, la version de Python, etc. Il contient également des fonctions spécifiques au système d’exploitation permettant d’obtenir des éléments comme la distribution Linux particulière.

Autres conseils

Si vous souhaitez des données lisibles par l'utilisateur, mais toujours détaillées, vous pouvez utiliser platform.platform. ()

>>> import platform
>>> platform.platform()
'Linux-3.3.0-8.fc16.x86_64-x86_64-with-fedora-16-Verne'

platform propose également d'autres méthodes utiles:

>>> platform.system()
'Windows'
>>> platform.release()
'XP'
>>> platform.version()
'5.1.2600'

Voici quelques appels que vous pouvez effectuer pour identifier votre position

import platform
import sys

def linux_distribution():
  try:
    return platform.linux_distribution()
  except:
    return "N/A"

print("""Python version: %s
dist: %s
linux_distribution: %s
system: %s
machine: %s
platform: %s
uname: %s
version: %s
mac_ver: %s
""" % (
sys.version.split('\n'),
str(platform.dist()),
linux_distribution(),
platform.system(),
platform.machine(),
platform.platform(),
platform.uname(),
platform.version(),
platform.mac_ver(),
))

Les sorties de ce script exécutées sur différents systèmes (Linux, Windows, Solaris, MacOS) et architectures (x86, x64, Itanium, power pc, sparc) sont disponibles ici: https://github.com/hpcugent/easybuild/wiki/OS_flavor_name_version

import os
print os.name

Cela vous donne les informations essentielles dont vous aurez généralement besoin. Pour distinguer, par exemple, différentes éditions de Windows, vous devrez utiliser une méthode spécifique à la plate-forme.

https://docs.python.org/library/os.html

Pour compléter le message de Greg, si vous utilisez un système posix comprenant MacOS, Linux, Unix, etc., vous pouvez utiliser os.uname () pour avoir une idée plus précise du type de système utilisé.

Quelque chose le long des lignes:

import os
if (os.name == "posix"):
    print os.system("uname -a")
# insert other possible OSes here
# ...
else:
    print "unknown OS"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top