Вы также можете использовать только модуль платформы, не импортируя модуль os для получения всей информации.
>>> import platform
>>> platform.os.name
'posix'
>>> platform.uname()
('Darwin', 'mainframe.local', '15.3.0', 'Darwin Kernel Version 15.3.0: Thu Dec 10 18:40:58 PST 2015; root:xnu-3248.30.4~1/RELEASE_X86_64', 'x86_64', 'i386')
Хорошая и удобная компоновка для целей отчетности может быть достигнута с использованием этой строки:
for i in zip(['system','node','release','version','machine','processor'],platform.uname()):print i[0],':',i[1]
Это дает этот результат:
system : Darwin
node : mainframe.local
release : 15.3.0
version : Darwin Kernel Version 15.3.0: Thu Dec 10 18:40:58 PST 2015; root:xnu-3248.30.4~1/RELEASE_X86_64
machine : x86_64
processor : i386
Обычно отсутствует версия операционной системы, но вы должны знать, используете ли вы Windows, linux или mac, независимый от платформы способ использовать это test:
In []: for i in [platform.linux_distribution(),platform.mac_ver(),platform.win32_ver()]:
....: if i[0]:
....: print 'Version: ',i[0]