반응형

파이썬, 운영체제 이름과 버전 출력 예제

 

글. 수알치 오상문 

 

import platform
import distro
#from distutils.spawn import find_executable

# 파이썬 상위 버전은 오류 발생: AttributeError: module 'platform' has no attribute 'dist'
def get_os_string_old():
    """
    Return distribution string, e.g. 'Debian_7.4'.
    """
    if platform.system() == "Windows":
        # Windows 11을 정확히 인식하도록 수정
        if platform.release() == "10" and int(platform.version().split('.')[2]) >= 22000:
            return platform.system() + "_11"
        else:
            return platform.system() + "_" + platform.release()
    else:
        dist = '_'.join(filter(None, platform.dist()[:2])).capitalize()
        system = platform.system().capitalize()
        return dist or system or platform.os.name or 'unknown'


def get_os_string():
    """
    Return distribution string, e.g. 'Debian_7.4'.
    """
    if platform.system() == "Windows":
        # Windows 11을 정확히 인식하도록 수정
        if platform.release() == "10" and int(platform.version().split('.')[2]) >= 22000:
            return platform.system() + "_11"
        else:
            return platform.system() + "_" + platform.release()
    else:
        dist = [distro.id().capitalize(), distro.version()]
        return '_'.join(filter(None, dist)) or 'unknown'


print(get_os_string())

 

[실행 결과] Windows 11

Windows_11

 

[실행 결과] CentOS 7

Centos_7

 

[실행 결과] Ubuntu 22

Ubuntu_22.04

 

반응형

+ Recent posts