2011년 7월 12일 화요일

Windows용 파이썬 실행기

원문: A Python Launcher For Windows (날짜: 2011-07-11, 작성자: Paul Moore)

pywin32의 저자이자 오랫동안 Windows에서 파이썬 지원을 위해 노력해오신 Mark Hammond 님이 새로운 Windows용 파이썬 실행기를 주제로 한 PEP 397을 작성해 주셨습니다. 표준 라이브러리 logging 모듈의 저자인 Vinay Sanjip 님은 최근 이 실행기에 대한 구현을 작성해 주셨습니다. 구현은 https://bitbucket.org/vinay.sajip/pylauncher/downloads에서 다운로드 하실 수 있습니다.

새로운 실행기는 Windows에서 파이썬 스크립트(.py.pyw 파일)에 사용하려는 파이썬 버전을 지정할 수 있어서 파이썬 2와 3을 동시에 사용할 수 있도록 해줍니다.

Windows 사용자께서는 새 실행기를 다운로드하고 테스트해 주셔서 파이썬 개발자가 남은 문제를 해결하는데 도움을 주셨으면 합니다. 실행기는 독립 프로그램으로 패키징되어 있고 현재 나와있는 파이썬 버전들을 지원합니다. 실행기가 최종적으로 완성되면 파이썬 3.3에 포함될 것입니다. (독립 패키지도 이전 버전 파이썬 사용자를 위해 계속 제공됩니다.)

실행기는 두 가지 버전으로 제공됩니다. - launcher.msi는 실행기를 Program Files 디렉터리에 설치하고 launchsys.msiSystem32 디렉터리에 설치합니다. (64비트 Windows용으로 64비트 버전도 제공됩니다.)

실행기에 대한 자세한 설명

실행기 동작에 대한 전체 명세는 PEP 397에 있습니다. 기본 원리를 요약하자면:

  • 실행기는 두 가지 실행 파일을 제공합니다. - py.exe(콘솔 버전)과 pyw.exe(GUI 버전)
  • 실행기는 .py(콘솔)과 .pyw(GUI) 파일 확장자에 대한 핸들러로 등록됩니다.
  • 스크립트가 실행되면 실행기는 스크립트에서 Unix 스타일의 #!(쉬뱅) 행을 찾아봅니다. 실행 파일 이름으로 python (시스템 기본 파이썬), python2 (기본 파이썬 2 릴리스), python3 (기본 파이썬 3 릴리스)을 인식합니다. 이것은 사용자 별, 컴퓨터 별로 자세히 설정할 수 있습니다.
  • py.exe 명령이 독립적으로 실행될 때에는 파이썬 대화식 인터프리터를 실행시킵니다. 명령 행 스위치가 지원되어서 py -2는 파이썬 2를, py -3은 파이썬 3을, py는 기본 버전을 실행합니다.

간단 사용 설명서

실행기는 설치가 되면 자신을 .py.pyw 스크립트에 연결시킵니다. 다른 조작을 하지 않았다면 스크립트는 컴퓨터에 설치된 기본 파이썬을 사용하여 실행될 것입니다. 그러므로 전과 차이는 없을 것입니다. 콘솔을 자주 사용한다면 .pyPATHEXT 변수에 추가해서 스크립트가 별도의 콘솔에서 실행되지 않도록 하면 좋습니다.

파이썬 2를 사용해야 하는 스크립트에는 첫 행에 다음을 추가합니다.

#!/usr/bin/env python2

(이는 Unix와 호환되는 형식입니다. Unix 호환성이 필요 없다면 #!python2라고 해도 됩니다.)

반대로 파이썬 3을 사용해야 하는 스크립트에는:

#!/usr/bin/env python3

을 첫 행에 추가합니다.

파이썬 인터프리터를 다음과 같은 명령을 통하여 시작할 수 있습니다.:

# 기본 파이썬 버전
py
# 파이썬 2
py -2
# 파이썬 3
py -3

위와 같이 사용하려면 py.exe 실행 파일이 실행 경로 상에 있어야 하는데 launchsys 버전의 설치 프로그램을 사용했다면 자동으로 됩니다. launcher.msi 버전은 설치 디렉터리 (C:\Program Files\Python Launcher)를 수동으로 PATH에 추가해야 합니다.

더 읽을거리

다음 python-dev 메일 스레드들은 핵심 논의 사항을 다룹니다:

댓글 없음:

댓글 쓰기