복붙노트

[PYTHON] OS가 파이썬에서 Vista인지 확인하는 방법?

PYTHON

OS가 파이썬에서 Vista인지 확인하는 방법?

Windows XP와 Windows Vista를 파이썬과 pywin32 또는 wxPython을 사용하여 구별하는 가장 간단한 방법은 무엇입니까?

본질적으로, 나는 현재의 운영체제가 비스타라면 True를 반환 할 함수가 필요하다 :

>>> isWindowsVista()
True

해결법

  1. ==============================

    1.파이썬에는 당신을 도와주는 멋진 '플랫폼'모듈이 있습니다.

    파이썬에는 당신을 도와주는 멋진 '플랫폼'모듈이 있습니다.

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

    참고 : 코멘트에서 언급 한 바와 같이 적절한 값은 파이썬의 이전 버전을 사용할 때 반환되지 않을 수 있습니다.

  2. ==============================

    2.pywin32가 필요없는 Twisted에서 사용 된 솔루션 :

    pywin32가 필요없는 Twisted에서 사용 된 솔루션 :

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

    Windows Server 2008과도 일치합니다.

  3. ==============================

    3.내가 찾은 가장 간단한 해결책은 다음과 같습니다.

    내가 찾은 가장 간단한 해결책은 다음과 같습니다.

    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))
    
  4. ==============================

    4.http://www.brunningonline.net/simon/blog/archives/winGuiAuto.py.html의 아이디어가 도움이 될 수 있습니다. 기본적으로 다음 질문에 답할 수 있습니다.

    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
    
  5. ==============================

    5.

    import platform
    if platform.release() == "Vista":
        # Do something.
    

    또는

    import platform
    if "Vista" in platform.release():
        # Do something.
    
  6. from https://stackoverflow.com/questions/196930/how-to-check-if-os-is-vista-in-python by cc-by-sa and MIT license