Make Your App Executable with PyInstaller
เขียนโปรแกรมรับข้อมูลเสร็จแล้ว! แต่ปัญหาคือ ไฟล์ที่เราเขียนมันนามสกุล .py ครับ ซึ่งถ้าเราส่งไฟล์นี้ไปให้เพื่อน หรือส่งให้ลูกค้าเปิด พวกเขาจะต้องมีโปรแกรม Python ติดตั้งอยู่ในเครื่องด้วยถึงจะเปิดได้... แบบนี้ไม่สะดวกแน่ๆ!
ดังนั้น เราต้องทำ "เวทมนตร์แปลงร่าง" ให้ไฟล์ .py กลายเป็นโปรแกรมสำเร็จรูป นามสกุล .exe (Executable) ที่ใครก็ดับเบิลคลิกเปิดใช้งานได้ทันทีครับ!
PyInstaller คือเครื่องมือ (Package) พิเศษที่จะทำหน้าที่แพ็คโค้ดของเรา รวมถึงไลบรารีต่างๆ (เช่น Tkinter) ห่อรวมกันเป็นก้อนเดียวให้กลายเป็นไฟล์ .exe ครับ โดยเราจะต้องสั่งงานมันผ่านหน้าต่างสีดำๆ ที่เรียกว่า Command Prompt (cmd)
.exe
เปิดหน้าต่าง Command Prompt (พิมพ์ cmd ในช่องค้นหาของ Windows) แล้วพิมพ์คำสั่งด้านล่างนี้ จากนั้นกด Enter เพื่อดาวน์โหลดเครื่องมือ:
py -m pip install pyinstaller
สมมติว่าไฟล์โค้ด my_app.py ของเราอยู่ที่หน้า Desktop เราต้องสั่งให้ cmd เดินทางไปที่ Desktop ก่อน ด้วยคำสั่ง cd (Change Directory):
my_app.py
cd Desktop
เมื่อยืนอยู่ถูกที่แล้ว ให้พิมพ์คำสั่งแปลงไฟล์ตามด้วยชื่อไฟล์โค้ดของเรา (อย่าลืมใส่ --onefile เพื่อให้โปรแกรมห่อทุกอย่างออกมาเป็นไฟล์ .exe เพียงไฟล์เดียวให้ดูสะอาดตาครับ):
--onefile
py -m PyInstaller --onefile my_app.py
รอจนกว่าระบบจะประมวลผลเสร็จ และขึ้นคำว่า "completed successfully"
ไปดูที่หน้า Desktop ของเรา จะพบโฟลเดอร์ใหม่โผล่ขึ้นมา ให้เข้าไปที่ โฟลเดอร์ชื่อ dist (Distribution) เราจะพบกับไฟล์ my_app.exe วางอยู่ข้างใน พร้อมก๊อปปี้ไปแจกจ่ายให้ทุกคนใช้งานได้เลย!
my_app.exe
ทดสอบความเข้าใจเรื่องการแปลงไฟล์โปรแกรม
ข้อที่ 1: เหตุผลสำคัญที่สุดที่เราต้องแปลงไฟล์ .py ให้กลายเป็นไฟล์ .exe คือข้อใด?
ข้อที่ 2: เครื่องมือที่ใช้ในการแปลงไฟล์ Python ให้กลายเป็นแอปพลิเคชันบน Windows มีชื่อว่าอะไร?
ข้อที่ 3: ในหน้าต่าง Command Prompt (cmd) คำสั่ง cd ย่อมาจากอะไร และมีหน้าที่อะไร?
cd
ข้อที่ 4: การใส่ส่วนขยาย --onefile ลงไปในคำสั่งแปลงไฟล์ (เช่น py -m PyInstaller --onefile test.py) ส่งผลอย่างไร?
py -m PyInstaller --onefile test.py
ข้อที่ 5: หลังจากที่ระบบรันคำสั่ง PyInstaller เสร็จสมบูรณ์แล้ว นักเรียนจะสามารถเข้าไปหาไฟล์ .exe ได้ที่โฟลเดอร์ใด?
PyInstaller