Python 스크립트, 이제 패키지 설치 없이 바로 실행!
by DD
9개월 전
조회수 16
PEP 723 표준을 통해 Python 스크립트 내 의존성을 직접 선언 가능
uv 패키지 매니저를 활용하여 스크립트를 Bash처럼 즉시 실행 가능
Typer를 사용해 Python으로 CLI 도구를 간편하게 제작
PEP 723: 스크립트 의존성 선언
PEP 723은 Python 스크립트 내에 의존성 정보를 포함하는 표준이다. 구체적으로 스크립트 상단에 # /// script 블록을 추가하여 의존성 패키지와 Python 버전을 명시한다. 따라서, 스크립트 실행 시 필요한 패키지를 자동으로 설치하고, 실행 환경을 쉽게 재현할 수 있다.
uv vs pip: 속도와 기능 비교
uv는 pip보다 훨씬 빠른 속도로 패키지를 설치하며, pipx와 venv 기능을 통합 제공한다. uv run 명령어를 사용하면, PEP 723 블록을 읽고 의존성 설치 후 스크립트를 실행한다. 반면, 기존 pip는 별도의 requirements.txt 파일 관리 및 가상 환경 설정을 필요로 하여, 개발 생산성에 차이를 보인다.
Typer: CLI 도구 제작 가이드
Typer는 Python 함수 정의만으로 CLI 명령어를 쉽게 만들 수 있게 해준다. 구체적으로 @app.command() 데코레이터를 사용하여 명령어를 정의하고, 인자 타입을 지정한다. 따라서, --help 문서 자동 생성, 인자 타입 검증, 명령어 자동 완성 기능을 활용하여, 사용자 친화적인 CLI 도구를 제작할 수 있다.
댓글 0
첫 번째 댓글을 남겨보세요!