Mögliches Duplikat:
Python: Auf welchem Betriebssystem laufe ich?
Wie der Titel sagt, kann ich das aktuelle Betriebssystem in Python finden?
Ich benutze normalerweise sys.platform
, um die Plattform zu bekommen. sys.platform
unterscheidet zwischen Linux, anderen Unixen und OS X, während os.name
ist für alle "posix
".
Für viel detailliertere Informationen verwenden Sie das Plattformmodul . Es verfügt über plattformübergreifende Funktionen, mit denen Sie Informationen zur Rechnerarchitektur, zum Betriebssystem und zur Betriebssystemversion, zur Python-Version usw. erhalten. Außerdem sind os-spezifische Funktionen verfügbar, mit denen Sie beispielsweise die jeweilige Linux-Distribution abrufen können.
Wenn Sie benutzerlesbare, aber dennoch detaillierte Daten wünschen, können Sie platform.platform () verwenden
>>> import platform
>>> platform.platform()
'Linux-3.3.0-8.fc16.x86_64-x86_64-with-Fedora-16-Verne'
platform
hat auch einige andere nützliche Methoden:
>>> platform.system()
'Windows'
>>> platform.release()
'XP'
>>> platform.version()
'5.1.2600'
Hier sind einige verschiedene mögliche Anrufe, die Sie tätigen können, um festzustellen, wo Sie sich befinden
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(),
))
Die Ausgaben dieses Skripts liefen auf einigen verschiedenen Systemen (Linux, Windows, Solaris, MacOS) und Architekturen (x86, x64, Itanium, PowerPC, sparc) sind hier verfügbar: https://github.com/ hpcugent/easybuild/wiki/OS_flavor_name_version
import os
print os.name
Auf diese Weise erhalten Sie die wichtigsten Informationen, die Sie normalerweise benötigen. Um beispielsweise zwischen verschiedenen Editionen von Windows zu unterscheiden, müssen Sie eine plattformspezifische Methode verwenden.
https://docs.python.org/library/os.html
Um Gregs Beitrag zu ergänzen, können Sie auf einem Posix-System, zu dem MacOS, Linux, Unix usw. gehören, mit os.uname () ein besseres Gefühl dafür bekommen, um was für ein System es sich handelt.
Etwas in die richtige Richtung:
import os
if (os.name == "posix"):
print os.system("uname -a")
# insert other possible OSes here
# ...
else:
print "unknown OS"