Как проверить, является ли ОС Vista в Python?

Как, простейшим образом, различать Windows XP и Windows Vista, используя Python и pywin32 или wxPython ?

По сути, мне нужна функция, которая будет вызывать True, если текущая ОС – Vista:

>>> isWindowsVista() True 

5 Solutions collect form web for “Как проверить, является ли ОС Vista в Python?”

У Python есть прекрасный модуль «платформы», который поможет вам.

 >>> import platform >>> platform.win32_ver() ('XP', '5.1.2600', 'SP2', 'Multiprocessor Free') >>> platform.system() 'Windows' >>> platform.version() '5.1.2600' >>> platform.release() 'XP' 

ПРИМЕЧАНИЕ. Как упоминалось в комментариях, правильные значения не могут быть возвращены при использовании более старых версий python.

Решение, используемое в Twisted, которое не нуждается в pywin32:

 def isVista(): if getattr(sys, "getwindowsversion", None) is not None: return sys.getwindowsversion()[0] == 6 else: return False 

Обратите внимание, что он также будет соответствовать Windows Server 2008.

Самое простое решение, которое я нашел, это:

 import sys def isWindowsVista(): '''Return True iff current OS is Windows Vista.''' if sys.platform != "win32": return False import win32api VER_NT_WORKSTATION = 1 version = win32api.GetVersionEx(1) if not version or len(version) < 9: return False return ((version[0] == 6) and (version[1] == 0) and (version[8] == VER_NT_WORKSTATION)) 

Может помочь идея из http://www.brunningonline.net/simon/blog/archives/winGuiAuto.py.html , которая может в основном ответить на ваш вопрос:

 win_version = {4: "NT", 5: "2K", 6: "XP"}[os.sys.getwindowsversion()[0]] print "win_version=", win_version 
 import platform if platform.release() == "Vista": # Do something. 

или

 import platform if "Vista" in platform.release(): # Do something. 
  • Использование внешних GUI-библиотек для создания пользовательских интерфейсов в Autodesk Maya
  • Установите wxPython на Mac os Mavericks
  • wxPython: как определить источник события
  • wxpython не может захватить EVT_KEY_DOWN enent
  • Сделать ширину столбца занимайте доступное пространство в wxPython ListCtrl
  • wxpython 3.0 перерывает старые приложения? (ошибка локали)
  • Эффективное управление Thumbnail изображениями для Python?
  • python: Щелкните правой кнопкой мыши на меню списка, не отображая выбранный элемент
  •  
    Interesting Posts for Van-Lav

    Предварительно обрабатывать данные с несколькими экземплярами с 1 меткой для тензорного потока нейронной сети

    Рекурсия Python RuntimeError

    добавить два кадра данных с пандами

    Головоломка: сколько способов вы можете поразить цель лазерным лучом в четырех отражающих стенах

    Проблема в динамическом добавлении методов в класс Python (например, django-tables2 «Таблица»)

    Почему я получаю «ожидаемый отступом блок», когда пытаюсь запустить мой скрипт на Python?

    Цветовая гамма – близко, но недостаточно близко

    Матрица приближения в sklearn.ensemble.RandomForestClassifier

    Изменение форм данных в пандах на основе меток столбцов

    получить список файлов, содержащихся в zip-файле

    как я могу контролировать производительность окон обслуживания из других окон службы с помощью библиотеки win32service и командной строки cmd в python

    Неблокирующий SMTP-клиент Tornado

    "Django.db.utils.ProgrammingError: отношение" app_user "не существует" во время теста manage.py

    как преобразовать выражение z3py в формат smtlib 2

    Исправление недействительного JSON-побега

    Python - лучший язык программирования в мире.