platform — 기본 플랫폼 식별 데이터 접근

platform — 기본 플랫폼 식별 데이터 접근

platform 모듈은 실행 중인 플랫폼의 식별 데이터에 접근하는 기능을 제공해요. 운영체제 이름, 버전, 머신 타입, 파이썬 빌드 정보 등을 조회할 때 유용해요. 문서에서는 플랫폼별 섹션(Unix, Windows, macOS, Linux 등)으로 나뉘어 설명돼요.

출처: Python documentation

본문

크로스 플랫폼 (Cross platform)

  • platform.architecture(executable=sys.executable, bits='', linkage='') — 주어진 실행 파일(기본은 파이썬 인터프리터 바이너리)에 대해 다양한 아키텍처 정보를 조회해요. 비트 아키텍처와 링키지 형식에 대한 정보를 담은 튜플 (bits, linkage) 를 반환해요(둘 다 문자열). 결정할 수 없는 값은 매개변수 기본값으로 반환돼요. bits'' 로 주어지면 지원되는 포인터 크기의 지표로 sizeof(pointer) 를 사용해요. 함수는 실제 작업을 시스템의 file 명령에 의존해요.
    • 참고: macOS(와 다른 플랫폼)에서는 실행 파일이 여러 아키텍처를 담은 유니버설 파일일 수 있어요. 현재 인터프리터의 "64비트 여부"를 알려면 sys.maxsize 속성을 조회하는 게 더 신뢰할 수 있어요: is_64bits = sys.maxsize > 2**32.
  • platform.machine() — 머신 타입을 반환해요(예: 'AMD64'). 결정할 수 없으면 빈 문자열을 반환해요.
  • platform.node() — 컴퓨터의 네트워크 이름을 반환해요(완전히 정규화되지 않을 수 있음). 결정할 수 없으면 빈 문자열.
  • platform.platform(aliased=False, terse=False) — 가능한 한 많은 유용한 정보로 기본 플랫폼을 식별하는 단일 문자열을 반환해요. 출력은 기계 파싱용보다는 사람이 읽기 위한 것이에요. aliased 가 참이면 흔한 이름과 다른 시스템 이름을 보고하는 여러 플랫폼에 별칭을 사용해요(예: SunOS 를 Solaris 로 보고). terse 를 참으로 설정하면 플랫폼 식별에 필요한 최소한의 정보만 반환해요.
  • platform.processor() — (실제) 프로세서 이름을 반환해요(예: 'amdk6'). 결정할 수 없으면 빈 문자열. 많은 플랫폼이 이 정보를 제공하지 않거나 machine() 과 같은 값을 반환해요(NetBSD 가 그렇게 함).
  • platform.python_build() — 파이썬 빌드 번호와 날짜를 문자열로 담은 튜플 (buildno, builddate) 를 반환해요.
  • platform.python_compiler() — 파이캔 컴파일하는 데 사용된 컴파일러를 식별하는 문자열을 반환해요.
  • platform.python_branch() — 파이썬 구현 SCM 브랜치를 식별하는 문자열.
  • platform.python_implementation() — 파이썬 구현을 식별하는 문자열. 가능한 반환 값은 'CPython', 'IronPython', 'Jython', 'PyPy'.
  • platform.python_revision() — 파이썬 구현 SCM 리비전을 식별하는 문자열.
  • platform.python_version() — 파이썬 버전을 'major.minor.patchlevel' 문자열로 반환해요. sys.version 과 달리 반환 값은 항상 patchlevel 을 포함해요(기본 0).
  • platform.python_version_tuple() — 파이썬 버전을 문자열 튜플 (major, minor, patchlevel) 로 반환해요.
  • platform.release() — 시스템의 릴리스를 반환해요(예: '2.2.0' 또는 'NT'). 결정할 수 없으면 빈 문자열.
  • platform.system() — 시스템/OS 이름을 반환해요(예: 'Linux', 'Darwin', 'Java', 'Windows'). 결정할 수 없으면 빈 문자열.
  • platform.system_alias(system, release, version) — 일부 시스템에 쓰이는 일반 마케팅 이름으로 별칭을 붙인 (system, release, version) 을 반환해요.
  • platform.version() — 시스템 릴리스 버전을 반환해요(예: '#3 on degas'). 결정할 수 없으면 빈 문자열.
  • platform.uname() — 꽤 이식 가능한 uname 인터페이스예요. system, node, release, version, machine, processor 여섯 속성을 가진 namedtuple 을 반환해요.

커맨드라인 사용법 (Command-line usage)

platform 모듈은 커맨드라인에서도 실행할 수 있어요. python -m platform 으로 호출하면 플랫폼 정보를 사람이 읽기 좋은 형태로 출력해요. 출력 형식을 제어하는 명령줄 옵션들이 제공돼요.

더 알아보기 (Learn more)