Wie kann ich die aktuellen OS in Python finden? [Duplikat]
-
02-07-2019 - |
Frage
Mögliche Duplizieren:
Python: Welche OS Ich arbeite auf
Wie der Titel schon sagt, wie kann ich das aktuelle Betriebssystem in Python finden?
Lösung
ich in der Regel verwenden sys.platform
die Plattform zu bekommen. sys.platform
wird unterschieden zwischen Linux, anderen Unix-Varianten und OS X während os.name
ist "posix
" für alle.
Für viel mehr Informationen, verwenden Sie die Plattform Modul . Dies hat plattformübergreifende Funktionen, die Ihnen Informationen über die Maschinenarchitektur, OS und OS-Version, die Version von Python geben, etc. Auch es os-spezifischen Funktionen hat Dinge wie die bestimmte Linux-Distribution zu erhalten.
Andere Tipps
Wenn Sie Benutzer lesbare Daten wollen aber noch detailliert, können Sie platform.platform ()
>>> 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 ist ein paar verschiedenen möglichen Anrufe, die Sie machen können, um festzustellen, wo Sie sind
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 Ausgänge dieses Skript lief auf ein paar verschiedene Systeme (Linux, Windows, Solaris, MacOS) und Architekturen (x86, x64, Itanium, Power-PC, Sparc) finden Sie hier: https://github.com/hpcugent/easybuild/wiki/OS_flavor_name_version
import os
print os.name
Das gibt Ihnen die wesentlichen Informationen, die Sie in der Regel benötigen. Zur Unterscheidung zwischen, sagen wir, verschiedene Versionen von Windows finden Sie eine plattformspezifische Methode verwenden.
https://docs.python.org/library/os.html
Um Gregs Beitrag zu ergänzen, wenn Sie auf einem Posix-System sind, das MacOS enthält, Linux, Unix, usw. Sie os.uname verwenden können () ein besseres Gefühl dafür zu bekommen, welche Art von System ist es.
Etwas entlang der Linien:
import os
if (os.name == "posix"):
print os.system("uname -a")
# insert other possible OSes here
# ...
else:
print "unknown OS"