Computer >> Máy Tính >  >> Lập trình >> Python

zipapp - Quản lý kho lưu trữ zip Python có thể thực thi

Mô-đun zipapp đã được giới thiệu trong thư viện tiêu chuẩn của Python kể từ phiên bản 3.5. Mô-đun này được sử dụng để quản lý việc tạo các tệp zip chứa mã Python, có thể được thực thi trực tiếp bởi trình thông dịch Python. Mô-đun cung cấp cả Giao diện dòng lệnh và giao diện lập trình.

Để sử dụng mô-đun zipapp theo chương trình, chúng ta nên có một mô-đun có chức năng chính. Kho lưu trữ thực thi được xây dựng bằng lệnh sau -

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

Ở đây, đường dẫn hiện tại sẽ có một thư mục có tên là myapp. Trong thư mục này, phải có example.py phải có hàm main ().

Tạo thư mục myapp và lưu mã sau dưới dạng example.py trong đó -

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

Khi lệnh trên được thực thi từ đầu cuối lệnh, nó sẽ tạo ra myapp.pyz. Bây giờ chúng ta có thể thực thi nó từ dấu nhắc lệnh.

C:\python37>python myapp.pyz
Hello World

Các tùy chọn dòng lệnh sau được hỗ trợ -

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

Theo mặc định, tên tệp đầu ra mang phần mở rộng .pyz và tên giống như nguồn đầu vào. Nó có thể được thay đổi bằng cách chỉ định tùy chọn in -o.

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

Điều này được sử dụng để chỉ định rõ ràng trình thông dịch là lệnh để chạy.

-c, --compress

Nén tệp bằng phương pháp deflate, giảm kích thước của tệp đầu ra.

Mô-đun zipapp có thể được sử dụng theo chương trình. Nó xác định các chức năng sau -

zipapp.create_archive (nguồn)

Tạo một kho lưu trữ ứng dụng từ thư mục nguồn. Ngoài ra, có thể sử dụng các đối số thông dịch, đích và nén.

zipapp.get_interpreter (lưu trữ)

Trả lại trình thông dịch được chỉ định trong #! ở đầu tệp lưu trữ.

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