Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

zipapp - 실행 가능한 Python zip 아카이브 관리

<시간/>

zipapp 모듈은 버전 3.5부터 Python의 표준 라이브러리에 도입되었습니다. 이 모듈은 Python 인터프리터에서 직접 실행할 수 있는 Python 코드가 포함된 zip 파일의 생성을 관리하는 데 사용됩니다. 이 모듈은 명령줄 인터페이스와 프로그래밍 인터페이스를 모두 제공합니다.

프로그래밍 방식으로 zipapp 모듈을 사용하려면 main 함수가 있는 모듈이 있어야 합니다. 실행 가능한 아카이브는 다음 명령으로 빌드됩니다 -

python -m zipapp myapp -m "example:main"

여기에서 현재 경로에는 myapp라는 폴더가 있어야 합니다. 이 폴더에는 main() 함수가 있어야 하는 example.py가 있어야 합니다.

myapp 폴더를 만들고 그 안에 example.py로 다음 코드를 저장하십시오 -

def main():
   print ('Hello World')
if __name__=='__main__':
   main()

커맨드 터미널에서 위의 커맨드를 실행하면 myapp.pyz가 생성됩니다. 이제 명령 프롬프트에서 실행할 수 있습니다.

C:\python37>python myapp.pyz
Hello World

다음 명령줄 옵션이 지원됩니다 -

-o <output>, --output=<output>

기본적으로 출력 파일 이름은 .pyz 확장자와 입력 소스와 동일한 이름을 갖습니다. -o 옵션을 지정하여 변경할 수 있습니다.

-p <interpreter>, --python=<interpreter>

실행할 명령으로 인터프리터를 명시적으로 지정하는 데 사용됩니다.

-c, --compress

deflate 방법으로 파일을 압축하여 출력 파일의 크기를 줄입니다.

zipapp 모듈은 프로그래밍 방식으로 사용할 수 있습니다. 다음 기능을 정의합니다 -

zipapp.create_archive(출처)

소스 폴더에서 애플리케이션 아카이브를 만듭니다. 또한 인터프리터, 대상 및 압축 인수를 사용할 수 있습니다.

zipapp.get_interpreter(아카이브)

#에 지정된 인터프리터를 반환합니다! 아카이브 시작 부분의 줄입니다.

>>> import zipapp
>>> zipapp.create_archive('myapp.pyz', 'myapp')