py_compile
- py_compile을 이용하여 컴파일하면 코드를 숨길 수 있다.(그러나, 그리 어렵지 않게 원래 코드를 알아낼 수 있다고 한다.)
- 다음과 같이 명령하면 HelloWorld.py를 컴파일한다.
python -m py_compile HelloWorld.py
- 컴파일하면 __pycache__ 폴더가 생기고, 그 안에 HelloWorld.cpython-310.pyc 파일이 생성된다.(310은 Python 버전)
- pyc 형식의 파일이 실행 파일인데, 동일 버전의 Python이 설치된 PC에서만 실행된다.
EXE 파일 만들기
- Python이 설치되지 않은 기기에서도 실행 가능하게 하려면 EXE 파일을 만든다.
- EXE 형식으로 컴파일하기 위해서는 pyinstaller가 필요하다.
pip install pyinstaller
기본
- 다음과 같이 명령하면 HelloWorld.py를 컴파일한다.
pyinstaller HelloWorld.py
- 컴파일하면 __pycache__, build, dist 폴더와 spec 파일이 생성된다.
- dist 폴더에 들어가면...
- 컴파일한 파일명과 같은 폴더가 있는데, 그 폴더 안에 EXE 파일이 있다.
- 만약 배포하고 싶다면 이 폴더를 배포한다.
하나의 파일로 컴파일하기
- 다음과 같이 --onefile 옵션을 붙이면 하나의 파일로 컴파일된다.
pyinstaller --onefile HelloWorld.py
- 하나의 파일로 컴파일하면 총 파일의 크기는 줄어드나 실행 속도가 느려진다.