.pyc (컴파일 된 파이썬) 파일을 실행하는 방법?


18

파이썬 파일을 컴파일하면 * .pyc 파일이 생성됩니다. 실행하려고하면 실행할 프로그램이 없다는 메시지가 나타납니다. 해당 옵션을 통해 온라인으로 프로그램을 검색하면 아무것도 없습니다. 누구든지 파일을 실행하도록 도와 줄 수 있습니까?

답변:


24

파이썬 파일은 바이트 컴파일되므로 파이썬 인터프리터를 통해 실행해야합니다

python yourfile.pyc

.py 파일을 직접 실행할 수있는 이유는 다음과 같습니다.

#!/usr/bin/python

또는

#!/usr/bin/env python

또는 .py 파일의 첫 번째 줄과 비슷한 것입니다. 이것은 쉘이 파이썬 인터프리터로 나머지 파일을 실행하도록 지시합니다.


3
이 답변을 보완하려면 : .pyc 파일은 기본 기계 코드가 아니기 때문에 용어의 가장 엄격한 의미로 컴파일 되지 않습니다. @tomdachi가 작성한 것처럼 파이썬 관련 바이트 코드 (Java .class와 매우 유사)는 여전히 파이썬 인터프리터가 실행되어야하는 이유입니다.
Pierre-Antoine

실제로 pyc는 py 파일을 가져올 때만 생성되었습니다. pyc 파일을 실행하는 것은 쓸모가 없습니다!
一个患有癌并且卓越的工程师来陆家嘴搞金融显然是为了理想哈哈哈

2

컴파일 된 .pyc python3 파일을 디 컴파일하기 위해 uncompyle6현재 우분투 OS에서 다음과 같이 사용했습니다.

  1. 불완전한 설치 6 :

    pip3 install uncompyle6
  2. .pyc 파일에서 .py 파일을 작성하려면 다음을 실행하십시오.

    uncompyle6 -o . your_filename.pyc
  3. 기존의 .pyc 파일 이름과 동일한 .py 파일이 자동으로 생성됩니다.


-1

Python은 .py 파일을 컴파일하여 .pyc 파일로 저장하여 후속 호출에서 참조 할 수 있도록합니다. .pyc에는 파이썬 소스 파일의 컴파일 된 바이트 코드가 들어 있는데, 이는 파이썬 인터프리터가 소스를 컴파일하는 것입니다. 이 코드는 파이썬의 가상 머신에 의해 실행됩니다. 삭제 (.pyc)에 해를 끼치 지 않지만 많은 처리를 수행하면 컴파일 시간이 절약됩니다.

파이썬은 컴파일 된 언어와 달리 해석되는 언어이지만 바이트 코드 컴파일러의 존재로 인해 구별이 모호해질 수 있습니다. 컴파일은 일반적으로 가장 빨리 실행되는 머신 코드로 변환하는 것을 의미합니다. 그러나 통역사는 사람이 읽을 수있는 텍스트를 가져 와서 실행합니다. 그들은 중간 단계에서 이것을 할 수 있습니다.

예를 들어, myprog.py 소스 파일을 실행할 때 python 인터프리터는 먼저 myprog.pyc(있는 바이트 코드 컴파일 버전 myprog.py) 및 최신 또는 최신 버전이 있는지 확인합니다 myprog.py. 그렇다면 통역사가이를 실행합니다. 존재하지 않거나 myprog.py최신 버전 인 경우 (소스 파일을 변경했음을 의미 함) 먼저 인터프리터가로 컴파일 myprog.py됩니다 myprog.pyc.

위의 예에는 한 가지 예외가 있습니다. #! /usr/bin/env python의 첫 번째 줄에 넣으면 myprog.py실행 가능하게 만든 다음 myprog.py스스로 실행하십시오 .


1
우분투에 오신 것을 환영합니다 ! 이것은 pyc파일이 존재 하는 이유에 대한 좋은 설명 이지만 파일을 실행하는 방법에 대한 질문에 대답하지 않았습니다. 답변이 아닌 확장 된 주석으로 규정 될 수 있습니다 . 제발 편집 실제 답을 추가하는 게시물을.
Melebius
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.