파이썬 프로그램을 실행 가능하게 만들기 위해 Linux에서 무엇을 사용합니까?


88

방금 리눅스 시스템 (Kubuntu)을 설치했고 리눅스에서 파이썬 프로그램을 실행 가능하게 만드는 프로그램이 있는지 궁금합니다.




2
아니요, 거기에 대답이 없습니다. 이 질문은 배포 문제에 대해 질문합니다.
tzot

아니, 속임수가 아닙니다. 이 질문은 라이브러리 가용성 및 호환성 문제를 방지하는 파이썬 소프트웨어 배포와 관련이 있습니다.
tzot

답변:


157

다음을 스크립트의 첫 번째 줄에 넣으십시오.

#!/usr/bin/env python

다음을 사용하여 파일을 실행 가능하게 만드십시오.

chmod +x myfile.py

실행

./myfile.py

6
혼란 스럽습니다. "#! / usr / bin / env python"은 해시가 주석 처리 된 줄로되어있을 때 어떻게 작동합니까? 해시 라인없이 스크립트를 실행하려고했지만 작동하지 않았습니다. 그래서 당연히 그 줄이 필요하지만 주석이라면 어떻게 작동합니까?
Nav

5
동료 프로그래머에게 스크립트를 보내는 경우 괜찮습니다. 그러나 이것은 최종 사용자에게 Python 프로그램을 배포하는 데 적합한 방법이 아닙니다. 사용자가 Python을 설치하지 않은 경우 어떻게합니까? 그들이 그렇게하는데 프로그램을 작성한 것과 다른 버전이라면 어떨까요? 전반적으로 이것은 특히 Windows에서 극소수의 사용자에게만 작동합니다.
Jonathan Hartley

5
@MathManiac 암시하는대로 진행하면 약 15 %의 사용자가 애플리케이션을 실행할 수 없습니다. 이것은 매우 적대적인 사용자 경험은 말할 것도없고, 혐오스러운 "애플리케이션 X가 짜증나게하는"게시물의 급류를 생성 할 것입니다. 나는 이것이 최종 사용자에게 응용 프로그램을 배포하는 데 적합한 방법이 아니라고 주장합니다.
Jonathan Hartley 2015 년

3
@PrahladYeri 사용 #는 / usr / 빈 / ENV python3
kingledion

4
@Nav 그이라고 말야 . 파이썬으로 해석되어서는 안되기 때문에 주석 처리되었습니다. 운영 체제에 정보를 제공합니다. 보다 구체적으로 스크립트를 실행하기 위해 어떤 프로그램을 사용해야하는지 알려줍니다.
MannyC

16

Python에서 독립 실행 형 바이너리 애플리케이션을 얻으려면 py2exe 또는 PyInstaller 와 같은 도구를 사용하십시오 .


키워드 : 독립
D 아담스

PyInstaller의 출력을 디 컴파일 할 수 있습니까?
SuB

14

PyInstaller를 사용할 수 있습니다. 단일 "바이너리"파일로 실행할 수 있도록 빌드 dist를 생성합니다.

http://pythonhosted.org/PyInstaller/#using-pyinstaller

Python 3에는 빌드 dist를 만드는 기본 옵션도 있습니다.

https://docs.python.org/3/distutils/builtdist.html


문제는 파이썬 스크립트를 exe 인 만드는 방법에 대한 아닙니다 / 요정 파일
warvariuc

8
미안하지만 질문은 그것 뿐인 것 같습니다! "Linux에서 파이썬 프로그램을 실행 가능하게 만드는 프로그램이 있는지 궁금합니다."
Leo Pepe

고마워요, @LeoPepe, 방금 pyinstaller의 도움으로 만든 실행 가능한 스크립트를 클릭하여 파일에서 입력 (현재 학생 이름)을 가져와 출력 파일에 출석을 제공하는 출석 수강자를 만들었습니다.
Genius

4

코드 시작 부분에이 줄을 넣으면 운영 체제가 파이썬 스크립트 실행에 필요한 바이너리 프로그램을 찾도록 지시합니다. 즉, 파이썬 인터프리터입니다.

따라서 파이썬 인터프리터를 유지하는 운영 체제에 따라 다릅니다. 운영 체제로 Ubuntu가 /usr/bin/python있으므로 Python 인터프리터가 유지 되므로 Python 스크립트 시작 부분에이 줄을 작성해야합니다.

#!/usr/bin/python

코드를 완료하고 저장 한 후

  1. 명령 터미널 시작

  2. 스크립트가 현재 작업 디렉토리에 있는지 확인하십시오.

  3. 유형 chmod +x script_name.py

  4. 이제 스크립트를 클릭하여 스크립트를 시작할 수 있습니다. 경고 상자가 나타납니다. 경고 상자에서 "실행"또는 "터미널에서 실행"을 누르십시오. 또는 터미널 프롬프트에서 다음을 입력합니다../script_name.py


4

실행 가능하게 만들고 싶다면 hello.py

먼저 다음을 사용하여 OS에서 Python이있는 경로를 찾습니다. which python

일반적으로 "/ usr / bin / python"폴더에 있습니다.

첫 번째 줄에 다음 hello.py을 추가해야합니다.#!/usr/bin/python

그런 다음 Linux 명령을 통해 chmod

다음과 같이 실행 가능하게 만들어야합니다. chmod +x hello.py

및 실행 ./hello.py


1

다음을 수행합니다.

  1. #! 스크립트 상단의 / usr / bin / env python3
  2. chmod u + x file.py
  3. 파일 이름에서 .py를 .command로 변경하십시오.

이것은 본질적으로 파일을 bash 실행 파일로 바꿉니다. 두 번 클릭하면 실행됩니다. 이것은 Unix 기반 시스템에서 작동합니다.


0

이를 수행하는 또 다른 방법은 별칭을 만드는 것입니다. 예를 들어 터미널에서 다음을 작성하십시오.

alias printhello='python /home/hello_world.py'

쓰기 printhello는 hello_world.py를 실행하지만 이것은 일시적입니다. 별칭을 영구적으로 만들려면 bashrc에 추가해야합니다. 터미널에 다음을 작성하여 편집 할 수 있습니다.

gedit ~/.bashrc
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.