파이썬 런타임 서비스
파이썬 런타임 서비스 (Python Runtime Services)
이 장에서 설명하는 모듈들은 파이썬 인터프리터와 그 환경과의 상호작용에 관한 폭넓은 서비스를 제공해요. sys, sysconfig, builtins, warnings, dataclasses, contextlib, inspect, gc 등 인터프리터 자체와 밀접한 기능을 담은 모듈들이 모여 있어요.
본문
이 장에서 문서화된 모듈 개요는 다음과 같아요.
sys— 시스템 특정 매개변수와 함수sys.monitoring— 실행 이벤트 모니터링- 도구 식별자
- 도구 등록·사용
- 이벤트
- 지역 이벤트
- 비권장 이벤트
- 보조 이벤트
- 기타 이벤트
- STOP_ITERATION 이벤트
- 이벤트 켜고 끄기
- 콜백 함수 등록
sysconfig— 파이썬 구성 정보 접근- 구성 변수
- 설치 경로
- 사용자 스킴
posix_usernt_userosx_framework_user
- 홈 스킴
posix_home
- 프리픽스 스킴
posix_prefixnt
- 설치 경로 함수
- 기타 함수
- 커맨드라인 사용법
builtins— 내장 객체__main__— 최상위 코드 환경__name__ == '__main__'- "최상위 코드 환경"이란?
- 관용적 사용법
- 패키징 고려 사항
- 파이썬 패키지의
__main__.py import __main__
warnings— 경고 제어- 경고 범주
- 경고 필터
- 반복 경고 억제 기준
- 경고 필터 설명
- 기본 경고 필터
- 기본 필터 재정의
- 경고 일시 억제
- 경고 테스트
- 새 버전의 의존성용 코드 업데이트
- 사용 가능한 함수
- 사용 가능한 컨텍스트 매니저
dataclasses— 데이터 클래스- 모듈 내용
- 사후 초기화 처리
- 클래스 변수
- 초기화 전용 변수
- 동결(frozen) 인스턴스
- 상속
__init__()의 키워드 전용 매개변수 재정렬- 기본 팩토리 함수
- 변경 가능한 기본값
- 디스크립터 타입 필드
contextlib—with문 컨텍스트용 유틸리티- 유틸리티
- 예제와 레시피
abc— 추상 기본 클래스atexit— 종료 핸들러traceback— 스택 트레이스 출력·검색__future__— future 문 정의gc— 가비지 컬렉터 인터페이스inspect— 살아있는 객체 검사- 타입과 멤버
- 소스 코드 검색
- Signature 객체로 호출 가능 객체 인트로스펙션
- 클래스와 함수
- 인터프리터 스택
이 모듈들은 인터프리터 동작을 제어하거나 검사하는 low-level 서비스를 제공하므로, 고급 파이썬 프로그래밍과 도구 제작에서 자주 사용돼요.