[python] Python 용 .py를 .exe로 어떻게 변환 할 수 있습니까?

상당히 간단한 Python 프로그램을 실행 파일로 변환하려고하는데 제가 찾고있는 것을 찾을 수 없었기 때문에 몇 가지 질문이 있습니다 (Python 3.6을 실행 중입니다).

지금까지 찾은 방법은 다음과 같습니다.

  1. 이전 버전의 Python을 다운로드하고 사용 pyinstaller/py2exe
  2. Python 3.6에서 가상 환경을 설정하여 1을 수행 할 수 있습니다.
  3. Python to C ++ 변환기를 다운로드하고 사용합니다.

다음은 내가 시도한 것 / 내가 겪은 문제입니다.

  • pyinstaller필요한 다운로드 전에 설치 했기 때문에 (pypi-something) 작동하지 않았습니다. 필수 파일을 다운로드 한 pyinstaller후에도 여전히 인식되지 않습니다.
  • Python 2.7에서 virtualenv를 설정하는 경우 실제로 Python 2.7을 설치해야합니까?
  • 비슷하게, 내가 보는 유일한 python to C ++ 변환기는 Python 3.5까지만 작동합니다. 시도 할 경우이 버전을 다운로드하여 사용해야합니까?


답변

Python 3.6에서 .py를 .exe로 변환하는 단계

  1. Python 3.6을 설치합니다 .
  2. cx_Freeze를 설치합니다 (명령 프롬프트를 열고 pip install cx_Freeze.
  3. idna를 설치합니다 (명령 프롬프트를 열고 pip install idna.
  4. .py라는 프로그램을 작성하십시오 myfirstprog.py.
  5. setup.py스크립트의 현재 디렉터리에 이름이 지정된 새 Python 파일을 만듭니다 .
  6. 에서 setup.py파일, 다음과 저장 코드를 복사합니다.
  7. Shift 키를 누른 상태에서 동일한 디렉토리를 마우스 오른쪽 버튼으로 클릭하면 명령 프롬프트 창을 열 수 있습니다.
  8. 프롬프트에서 다음을 입력하십시오. python setup.py build
  9. 스크립트에 오류가 없으면 응용 프로그램을 만드는 데 문제가 없습니다.
  10. 새로 생성 된 폴더를 확인합니다 build. 다른 폴더가 있습니다. 해당 폴더 내에서 응용 프로그램을 찾을 수 있습니다. 그것을 실행하십시오. 자신을 행복하게 만드십시오.

블로그 에서 원본 스크립트를 참조하십시오 .

setup.py :

from cx_Freeze import setup, Executable

base = None    

executables = [Executable("myfirstprog.py", base=base)]

packages = ["idna"]
options = {
    'build_exe': {    
        'packages':packages,
    },    
}

setup(
    name = "<any name>",
    options = options,
    version = "<any number>",
    description = '<any description>',
    executables = executables
)

편집하다:

  • 대신 4 단계 에서 만든 확장 파일 이름을 myfirstprog.py입력해야 .py합니다 .
  • 각 포함해야 import당신의 에드 패키지 .pypackages목록 (예 : packages = ["idna", "os","sys"])
  • any name, any number, any descriptionsetup.py파일이 적절하게 변경해야합니다 (예 : 동일하게 유지 안 name = "<first_ever>", version = "0.11", description = '')
  • import시작하기 전에 에디션 패키지가 설치되어 있어야합니다 8 단계 .

답변

Python 3.6은 PyInstaller에서 지원됩니다.

Python 폴더에서 cmd 창을 엽니 다 (명령 창을 열고 cdShift 키를 누른 상태에서 Windows 탐색기에서 마우스 오른쪽 단추로 클릭하고 ‘여기에서 명령 창 열기’를 선택합니다). 그런 다음 입력하십시오

pip install pyinstaller

그리고 그게 다야.

사용하는 가장 간단한 방법은 명령 프롬프트에 입력하는 것입니다.

pyinstaller file_name.py

사용 방법에 대한 자세한 내용은 이 질문을 참조하십시오 .


답변

GitHub 에는 auto-py-to-exe라는 오픈 소스 프로젝트 가 있습니다 . 실제로 내부적으로도 PyInstaller를 사용하지만 PyInstaller를 제어하는 ​​간단한 GUI가 있기 때문에 편안한 대안이 될 수 있습니다. 다른 솔루션과 달리 독립 실행 형 파일을 출력 할 수도 있습니다. 또한 설정 방법을 보여주는 비디오 도 제공 합니다.

GUI :

Exe로 자동 파이

산출:

산출


답변

가장 좋은 것이 무엇인지 말할 수는 없지만 과거에 성공한 도구는 cx_Freeze였습니다 . 그들은 최근 (’17 년 1 월 7 일) 버전 5.0.1로 업데이트했으며 Python 3.6을 지원합니다.

다음은 pypi
https://pypi.python.org/pypi/cx_Freeze입니다.

문서는 필요에 따라 여러 가지 방법이 있음을 보여줍니다.
http://cx-freeze.readthedocs.io/en/latest/overview.html

아직 시도하지 않았으므로 간단한 방법에 대해 논의한 게시물을 가리켜 보겠습니다. 하지만 일부는 변경되거나 변경되지 않았을 수 있습니다.

cx_freeze를 어떻게 사용합니까?


답변

내 패키지 PySimpleGUI와 함께 Nuitka 및 PyInstaller를 사용하고 있습니다.

Nuitka
tkinter가 Nuikta로 컴파일하는 데 문제가있었습니다. 프로젝트 기여자 중 한 명이 문제를 해결하는 스크립트를 개발했습니다.

tkinter를 사용하지 않는 경우 “그냥 작동”할 수 있습니다. tkinter를 사용하는 경우 그렇게 말하고 스크립트와 지침을 게시하도록 노력하겠습니다.

PyInstaller
3.6을 실행 중이고 PyInstaller가 훌륭하게 작동합니다! 내 exe 파일을 만드는 데 사용하는 명령은 다음과 같습니다.

pyinstaller -wF myfile.py

-wF는 단일 EXE 파일을 생성합니다. 내 모든 프로그램에 GUI가 있고 명령 창을 표시하고 싶지 않기 때문에 -w 옵션은 명령 창을 숨 깁니다.

이것은 Python으로 작성된 Winforms 프로그램을 실행하는 것과 비슷 합니다.

[2019 년 7 월 20 일 업데이트]

PyInstaller를 사용하는 PySimpleGUI GUI 기반 솔루션이 있습니다. PySimpleGUI를 사용합니다. pysimplegui-exemaker 라고 하며 pip 설치가 가능합니다.

pip install PySimpleGUI-exemaker

설치 후 실행하려면 :

python -m pysimplegui-exemaker.pysimplegui-exemaker


답변

이제 PyInstaller를 사용하여 변환 할 수 있습니다. 저는 Python 3에서도 작동합니다.

단계 :

  1. PC 시작
  2. 명령 프롬프트 열기
  3. 명령 입력 pip install pyinstaller
  4. 설치되면 ‘cd’명령을 사용하여 작업 디렉토리로 이동하십시오.
  5. 실행 명령 pyinstall <filename>

답변