[python] 파이썬 파일 확장자, .pyc .pyd .pyo는 무엇을 의미합니까?

이 파이썬 파일 확장자는 무엇을 의미합니까?

  • .pyc
  • .pyd
  • .pyo

차이점은 무엇이며 * .py 파일에서 어떻게 생성됩니까?



답변

  1. .py: 이것은 일반적으로 작성한 입력 소스 코드입니다.
  2. .pyc: 이것은 컴파일 된 바이트 코드입니다. 모듈을 가져 오면 파이썬은 *.pyc바이트 코드가 들어 있는 파일을 빌드하여 나중에 더 쉽고 빠르게 가져올 수 있습니다.
  3. .pyo: 이것은 *.pyc최적화 ( -O) 플래그 로 작성된 파일에 대해 Python 3.5 이전에 사용 된 파일 형식 입니다. (아래 참고 참조)
  4. .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파일 이 최적화되지 않은 바이트 코드와 최적화 된 바이트 코드를 모두 나타냅니다.


답변

  • .py- 일반 스크립트
  • .py3- (드물게 사용되는) Python3 스크립트. Python3 스크립트는 일반적으로 “.py3″이 아닌 “.py”로 끝나지만 몇 번 본 적이 있습니다.
  • .pyc- 컴파일 된 스크립트 (바이트 코드)
  • 지며 .pyo – 최적화의 pyc 파일 (Python3.5로, 파이썬은 이영표와 PYC보다는 PYC 사용합니다)
  • .pyw- 콘솔없이 창 모드에서 실행되는 Python 스크립트. pythonw.exe로 실행
  • .pyx -Cython src를 C / C ++로 변환
  • .pyd -Windows DLL로 작성된 Python 스크립트
  • .pxd -C / C ++ 헤더에 해당하는 Cython 스크립트
  • .pxi -MyPy 스텁
  • .pyi- 스텁 파일 ( PEP 484 )
  • .pyz -Python 스크립트 아카이브 ( PEP 441 ); 이것은 표준 Python 스크립트 헤더 다음에 이진 형식으로 압축 된 Python 스크립트 (ZIP)를 포함하는 스크립트입니다.
  • .pywz -MS-Windows 용 Python 스크립트 아카이브 ( PEP 441 ); 이것은 표준 Python 스크립트 헤더 다음에 이진 형식으로 압축 된 Python 스크립트 (ZIP)를 포함하는 스크립트입니다.
  • .py [cod] -파일이 “.pyc”, “.pyo”또는 “.pyd”일 수 있음을 의미하는 “.gitignore”의 와일드 카드 표기법.
  • .pth- 경로 구성 파일 내용은에 추가 할 추가 항목 (한 줄에 하나씩) sys.path입니다. site모듈을 참조하십시오 .

추가 Python 파일 확장명 (대부분은 드물고 비공식적)의 더 큰 목록은 http://dcjtech.info/topic/python-file-extensions/ 에서 찾을 수 있습니다.


답변