22 กรกฎาคม 2558

Published กรกฎาคม 22, 2558 by with 0 comment

บีบอัดและเรียกใช้โมดูลจากไฟล์ zip ในภาษาไพทอน

สวัสดีผู้อ่านทุกท่านครับ เมื่อไม่กี่วันก่อน ผมได้นำเสนอความสามารถใหม่ของภาษา Python 3.5 นั้นคือ zipapp อันที่จริงแล้วภาษาไพทอนสามารถเรียกใช้โมดูลจากไฟล์ zip ด้วยการ zipimport เข้ามาใช้งานได้ครับ

ตั้งแต่ภาษาไพทอนเวชั่น 2.3 เป็นต้นมา ภาษาไพทอนได้มีความสามารถหนึ่ง คือ ให้ภาษาไพทอนสามารถเรียกใช้โมดูลจากไฟล์ zip ได้ โดยไฟล์ zip เก็บไฟล์โมดูลต่าง ๆ เช่น .py ไว้ และได้เป็นมาตรฐาน PEP 273 http://www.python.org/dev/peps/pep-0273 และมาตรฐาน PEP 302 https://www.python.org/dev/peps/pep-0302/

ความสามารถนี้ใช้ได้ทั้ง Python 2 และ Python 3 โดยเป็นไลบรารีหลักที่ชื่อว่า "zipimport"

การใช้งาน
ให้ทำการบีบอัดไฟล์โมดูล .py ให้อยู่รวมกันเป็นไฟล์บีบอัด zip เช่น ไฟล์โมดูลคือ pytemperature.py ทำการบีบอัดเป็นไฟล์ zip ที่ชื่อว่า a.zip

[python]
>>>> import sys
>>>> sys.path.insert(0, 'a.zip') #เรียกใช้งานโมดูลในไฟล์ a.zip
>>>> import pytemperature
>>>> pytemperature.c2f(37.78)
100.0
>>>> pytemperature.__file__ #ไฟล์ที่อยู่ใน a.zip
'a.zip\\pytemperature.py'
[/python]

เอกสารการใช้งาน zipimport เพิ่มเติม https://docs.python.org/3/library/zipimport.html
ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)