Python으로 작성된 스크립트를 Windows 환경에서 .exe 파일로 변환하여 다른 사용자에게 쉽게 배포할 수 있도록 하는 방법을 설명합니다.
준비물
다음 프로그램과 파일이 준비되어 있어야 합니다.
- 파이썬(Python) 설치된 환경 (다운로드 페이지)
- 배포하고자 하는 Python 스크립트 파일 (.py)
- PyInstaller (파이썬을 EXE로 변환해주는 패키지)
1. PyInstaller 설치
먼저, PyInstaller라는 프로그램을 설치합니다.
1. 키보드에서 Windows + R을 누르고, cmd를 입력 후 엔터를 누르면 명령 프롬프트가 실행됩니다.
2. 명령 프롬프트에 아래 명령어를 입력한 뒤, 엔터를 누릅니다.
pip install pyinstaller
- 설치가 완료되면 다음과 같이 메시지가 표시됩니다.
Successfully installed pyinstaller-5.x.x
2. EXE로 변환하기
PyInstaller를 사용하여 Python 스크립트를 EXE 파일로 변환하는 과정입니다.
1. 배포할 Python 스크립트 파일이 있는 폴더로 이동합니다.
예를 들어, 파일 위치가 다음과 같다면:
C:\Users\홍길동\Documents\my_script.py
명령 프롬프트에서 다음 명령어를 입력합니다.
cd C:\Users\홍길동\Documents
- 해당 폴더 위치로 이동된 것을 확인합니다.
2. PyInstaller 명령어로 EXE파일을 생성합니다.
pyinstaller --onefile my_script.py
옵션 의미
--onefile | 스크립트를 하나의 exe 파일로 만들어줍니다. |
--noconsole (선택사항) | 실행 시 검은색 콘솔 창을 표시하지 않습니다 (GUI 프로그램일 경우 권장). |
GUI 프로그램인 경우는 아래처럼 하세요:
pyinstaller --onefile --noconsole my_script.py
- 명령어를 실행하면 자동으로 EXE 생성 과정이 진행됩니다. 몇 분 정도 걸릴 수 있습니다.
- 정상적으로 진행되면 아래 메시지가 출력됩니다.
Building EXE from EXE-00.toc completed successfully.
3. EXE 파일 확인하기
위 과정을 모두 마치면 아래 폴더가 생성됩니다:
- dist 폴더 : EXE 파일이 저장된 곳
- build 폴더 : 생성 중인 중간 파일이 있는 폴더 (삭제 가능)
- .spec 파일 : 생성된 설정파일 (삭제 가능)
최종적으로 생성된 EXE 파일은 다음 위치에 있습니다.
C:\Users\홍길동\Documents\dist\my_script.exe
이 my_script.exe 파일을 복사하여 다른 PC에서도 바로 실행할 수 있습니다.
4. EXE 파일 실행하기
EXE 파일을 실행하는 방법은 간단합니다.
- 만들어진 my_script.exe를 더블 클릭하면 바로 실행됩니다.
- 파일은 독립적으로 실행되기 때문에, Python을 따로 설치하지 않은 환경에서도 사용 가능합니다.
자주 발생하는 문제 해결법
실행이 안 되거나 오류가 발생할 때
- 스크립트에서 파일 경로를 절대 경로로 쓰면 문제가 발생할 수 있습니다. 항상 상대 경로를 사용하거나, 파일 경로를 조정하세요.
- 외부 라이브러리를 사용하는 경우 명시적으로 포함해야 할 수 있습니다.
- pyinstaller --onefile --hidden-import 라이브러리이름 my_script.py
예시:
pyinstaller --onefile --hidden-import pandas my_script.py
- 생성된 폴더 (dist 폴더)는 다른 위치로 이동해도 문제없이 실행 가능합니다.
하지만 EXE 파일 하나만 가져가는 것이 아니라, 생성된 모든 파일(폴더 포함)을 옮겨야 문제가 없습니다.
정리 및 요약
단계 명령어 요약
PyInstaller 설치 | pip install pyinstaller |
EXE 생성 | pyinstaller --onefile 스크립트.py |
GUI 프로그램 생성 | pyinstaller --onefile --noconsole 스크립트.py |
외부 라이브러리 추가 포함 | pyinstaller --onefile --hidden-import 라이브러리이름 스크립트.py |
'Programming > Python' 카테고리의 다른 글
파이썬 *arg 와 **kwargs 이해 하기 (0) | 2022.03.11 |
---|---|
파이썬 f-string (0) | 2021.12.31 |
파이썬 모듈이란? 패키지란? (0) | 2021.07.01 |
파이썬 PEP8 스타일 가이드 정리 (0) | 2021.07.01 |
파이썬 클래스 상속 (0) | 2021.06.28 |