.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 |