답변:
.py
: 이것은 일반적으로 작성한 입력 소스 코드입니다..pyc
: 이것은 컴파일 된 바이트 코드입니다. 모듈을 가져 오면 파이썬은 *.pyc
바이트 코드가 들어 있는 파일을 빌드하여 나중에 더 쉽고 빠르게 가져올 수 있습니다..pyo
: 이것은 *.pyc
최적화 ( -O
) 플래그 로 작성된 파일에 대해 Python 3.5 이전에 사용 된 파일 형식 입니다. (아래 참고 참조).pyd
: 이것은 기본적으로 Windows dll 파일입니다. http://docs.python.org/faq/windows.html#is-a-pyd-file-the-same-as-a-dll또한에 대한 더 자세한 설명은 .pyc
대 .pyo
, 한 번 봐 걸릴 : http://www.network-theory.co.uk/docs/pytut/CompiledPythonfiles.html를 (I 아래의 중요한 부분을 복사 한)
- -O 플래그를 사용하여 Python 인터프리터를 호출하면 최적화 된 코드가 생성되어 '.pyo'파일에 저장됩니다. 최적화 프로그램은 현재 많은 도움이되지 않습니다. 단언 문 만 제거합니다. -O를 사용하면 모든 바이트 코드가 최적화됩니다. .pyc 파일은 무시되고 .py 파일은 최적화 된 바이트 코드로 컴파일됩니다.
- 두 개의 -O 플래그를 Python 인터프리터 (-OO)에 전달하면 바이트 코드 컴파일러가 최적화를 수행하여 드문 경우지만 프로그램이 오작동 할 수 있습니다. 현재
__doc__
바이트 코드에서 문자열 만 제거되므로 더 작은 '.pyo'파일이 생성됩니다. 일부 프로그램은 이러한 프로그램을 사용할 수 있기 때문에 수행중인 작업을 알고있는 경우에만이 옵션을 사용해야합니다.- '.py'파일에서 읽을 때보 다 '.pyc'또는 '.pyo'파일에서 읽을 때 프로그램이 더 빨리 실행되지 않습니다. '.pyc'또는 '.pyo'파일에 대해 더 빠른 유일한 것은 파일을로드하는 속도입니다.
- 명령 행에서 이름을 지정하여 스크립트를 실행할 때 스크립트의 바이트 코드는 절대 '.pyc'또는 '.pyo'파일에 기록되지 않습니다. 따라서 대부분의 코드를 모듈로 이동하고 해당 모듈을 가져 오는 작은 부트 스트랩 스크립트를 사용하면 스크립트 시작 시간을 줄일 수 있습니다. 명령 줄에서 '.pyc'또는 '.pyo'파일의 이름을 직접 지정할 수도 있습니다.
노트 :
2015-09-15에 Python 3.5 릴리스 는 PEP-488을 구현하고 .pyo
파일을 제거했습니다 . 이는 .pyc
파일 이 최적화되지 않은 바이트 코드와 최적화 된 바이트 코드를 모두 나타냅니다.
def f(x): assert(x**5 == x*x*x*x*x); return x; import timeit; print(timeit.repeat("for x in range(100): f(x)", "from __main__ import f", number=10000));
sys.path
입니다. site
모듈을 참조하십시오 .추가 Python 파일 확장명 (대부분은 드물고 비공식적)의 더 큰 목록은 http://dcjtech.info/topic/python-file-extensions/ 에서 찾을 수 있습니다.
.pth
파일에 대해 논의해야 합니다.