Как я могу найти текущую ОС в Python? [дубликат]


Возможные Дубликаты:
Python:на какой ОС я работаю?

как говорится в заголовке, Как я могу найти текущую операционную систему в python?

5 178

5 ответов:

Я обычно использую sys.platform чтобы получить на платформу. sys.platform будет различать linux, другие unixes и OS X в то время как os.name это "posix" для всех из них.

для более подробной информации, используйте модуль платформы. Это кросс-платформенные функции, которые дадут вам информацию об архитектуре машины, ОС и версии ОС, версии Python и т. д. Также он имеет специфические для ОС функции, чтобы получить такие вещи, как конкретный дистрибутив linux.

если вы хотите, чтобы пользователь читал данные, но все еще подробно, вы можете использовать .платформа()

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

platform также имеет некоторые другие полезные методы:

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

вот несколько различных возможных вызовов вы можете сделать, чтобы определить, где вы находитесь

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(),
))

выходы этого скрипта, запущенного на целой куче различных систем, доступны здесь:https://github.com/hpcugent/easybuild/wiki/OS_flavor_name_version

import os
print os.name

Это дает вам необходимую информацию, которая вам обычно нужна. Чтобы различать, скажем, различные выпуски Windows, вам придется использовать метод, зависящий от платформы.

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

чтобы дополнить сообщение Грега, если вы находитесь в системе posix, которая включает в себя MacOS, Linux, Unix и т. д. вы можете использовать ОС.uname (), чтобы лучше понять, что это за система.

что-то вроде:

import os
if (os.name == "posix"):
    print os.system("uname -a")
# insert other possible OSes here
# ...
else:
    print "unknown OS"