.py 파일에서 .pyc 파일을 수동으로 생성하는 방법
어떤 이유에서인지 Python의 "import" 문을 사용하여 .pyc 파일을 자동으로 생성할 수 없습니다.
다음과 같은 기능을 구현할 수 있는 방법이 있습니까?
def py_to_pyc(py_filepath, pyc_filepath):
...
사용할 수 있습니다.compileall종착역에서다음 명령은 하위 디렉터리로 재귀적으로 이동하여 검색된 모든 파이썬 파일에 대한 pyc 파일을 만듭니다.compileall 모듈은 python 표준 라이브러리의 일부이므로 추가로 설치할 필요가 없습니다.이것은 python2와 python3에서 정확히 같은 방식으로 작동합니다.
python -m compileall .
명령줄에서 다음을 사용하여 개별 파일을 컴파일할 수 있습니다.
python -m compileall <file_1>.py <file_n>.py
파이썬을 마지막으로 사용한 지 오래되었지만, 다음을 사용할 수 있을 것으로 생각합니다.
import py_compile
py_compile.compile("file.py")
파이썬 스크립트를 바이트코드로 컴파일하는 몇 가지 방법을 찾았습니다.
사용.
py_compile터미널:python -m py_compile File1.py File2.py File3.py ...-m컴파일할 모듈 이름을 지정합니다.또는 파일의 대화형 컴파일을 위해
python -m py_compile - File1.py File2.py File3.py . . .사용.
py_compile.compile:import py_compile py_compile.compile('YourFileName.py')사용.
py_compile.main():한 번에 여러 개의 파일을 컴파일합니다.
import py_compile py_compile.main(['File1.py','File2.py','File3.py'])목록은 원하는 만큼 길어질 수 있습니다.또는 기본 파일 이름 또는 명령줄 인수의 파일 이름으로 파일 목록을 전달할 수 있습니다.
아니면 합격하면.
['-']주로 대화식으로 파일을 컴파일할 수 있습니다.사용.
compileall.compile_dir():import compileall compileall.compile_dir(direname)제공된 디렉토리에 있는 모든 Python 파일을 컴파일합니다.
사용.
compileall.compile_file():import compileall compileall.compile_file('YourFileName.py')
아래 링크를 살펴보십시오.
https://docs.python.org/3/library/py_compile.html
https://docs.python.org/3/library/compileall.html
compile all을 사용합니다.스크립트와 명령줄 모두에서 잘 작동합니다.이미 언급한 py_compile보다 조금 더 높은 수준의 모듈/툴로 내부적으로도 사용하고 있습니다.
일반적으로 다음 명령은 python 프로젝트를 포함합니다.
python -m compileall <project-name>
Python2에서는 모든 것을 컴파일합니다..py파일 대상.pyc모듈뿐만 아니라 패키지를 포함하는 프로젝트의 파일입니다.
Python3에서는 모든 것을 컴파일합니다..py파일 대상__pycache__패키지와 모듈을 포함하는 프로젝트의 폴더입니다.
의 동일한 레이아웃을 적용할 수 있습니다.
.pyc다음을 사용하여 Python2에서와 같은 폴더에 있는 파일:
python3 -m compileall -b <pythonic-project-name>옵션
-b의 출력을 트리거합니다..pyc파일을 레거시 위치(즉, Python2와 동일)에 저장할 수 있습니다.
원래 질문 요구 사항(소스 경로 및 대상 경로)을 일치시키려면 코드가 다음과 같아야 합니다.
import py_compile
py_compile.compile(py_filepath, pyc_filepath)
입력 코드에 오류가 있으면 py_compile입니다.PyCompileError 예외가 발생했습니다.
- 파일 디렉터리에 새 python 파일을 만듭니다.
- 형자
import (the name of the file without the extension) - 파일을 실행합니다.
- 디렉토리를 열고 pycache 폴더를 찾습니다.
- 안에는 당신의 .pyc 파일이 있어야 합니다.
두 가지 방법이 있습니다.
- 명령줄
- 파이썬 프로그램 사용
명령줄을 사용하는 경우 를 사용하여 python 코드를 python 이진 코드로 컴파일합니다.예:python -m compileall -x ./*
또는 이 코드를 사용하여 라이브러리를 바이트 코드로 컴파일할 수 있습니다.
import compileall
import os
lib_path = "your_lib_path"
build_path = "your-dest_path"
compileall.compile_dir(lib_path, force=True, legacy=True)
def moveToNewLocation(cu_path):
for file in os.listdir(cu_path):
if os.path.isdir(os.path.join(cu_path, file)):
compile(os.path.join(cu_path, file))
elif file.endswith(".pyc"):
dest = os.path.join(build_path, cu_path ,file)
os.makedirs(os.path.dirname(dest), exist_ok=True)
os.rename(os.path.join(cu_path, file), dest)
moveToNewLocation(lib_path)
☞ 문서를 살펴봅니다.자세한 문서는 python.org 를 참조하십시오.
언급URL : https://stackoverflow.com/questions/5607283/how-can-i-manually-generate-a-pyc-file-from-a-py-file
'programing' 카테고리의 다른 글
| 서버를 위한 ASP.Net Core 대체 방법에서 절대 경로를 얻는 방법.지도 경로 (0) | 2023.06.11 |
|---|---|
| redirectMode="ResponseRewrite"를 설정할 때 사용자 지정 오류가 작동하지 않음 (0) | 2023.06.11 |
| "localhost"에서 사이트를 실행하는 속도가 매우 느림 (0) | 2023.06.11 |
| R의 전역 변수 (0) | 2023.06.11 |
| 참조로 배열 전달 (0) | 2023.06.11 |