หลังจกาที่เรานั้นได้ศึกษาเกี่ยวบทความการใช่ภาษาไพธอนกันไปในบทความต่างๆแล้วเช่นบทความ การจัดการข้อผิดพลาดในภาษา Python Exceptions,Syntax Errors แบบจัดเต็ม   บทความ คำสั่งพื้นฐานในภาษา Python ตอนที่ 1 print input sum type  และบทความ บทเรียน สอน Python บทที่ 12 การใช้ While loop statements ใน Python    ในบทความนี้จะมาแนะนำการแปลงไฟล์ ไพธอน ให้เป็นไฟล์ .exe (อีเอ็กอี)  โดยใช้โมดูล Pyinstaller (ไพอินสตอเลอร์)  

 

 

ไฟล์ .exe คืออะไร

            ย่อมาจากคำว่า executable file  (เอกซิคิวเทเบิล ไฟล์) ใช้เป็นนามสกุล (file type) ของแฟ้มข้อมูลในระบบดอสและ โอเอส/ทู แฟ้มที่มีนามสกุลดังกล่าวนี้ จะเป็นแฟ้มข้อมูลที่เป็นตัวโปรแกรมแท้ ๆ และจะเป็นตัวปฏิบัติการ แฟ้มข้อมูลอื่น ๆ นอกจากนั้นจะเป็นเพียงแฟ้มประกอบ   ซึ่งเราจะเห็นได้มากในระบบปฏิบัติการวินโดว์ ซึ่งโปรแกรมส่วนมากในวินโดวส์จะเป็นไฟล์ประเภทนี้

 

วิธีการแปลงไฟล์ไพธอน ให้เป็นไฟล์ .exe (อีเอ็กอี)  โดยใช้โมดูล Pyinstaller (ไพอินสตอเลอร์)

              1.ให้เรานั้นติดตั้งโมดูล pyinstaller  ก่อน ในที่นี้ใช้อิดิตเตอร์ไพชาร์มในการติดตั้ง

python -m pip install pyinstaller

              2.เมื่อติดตั้งเสร็จแล้วให้พิมคำสั่งนี้ในเทอร์มินอลเพื่อแปลงไฟล์ไพธอนที่เราต้องการและกด Enter

pyinstaller --onefile --icon=te\ha2.ico --clean te\o.py

              ความหมายของแต่ลำคำสั่ง

              pyinstaller    เรียกใช้โมดูล pyinstaller (ไพอินสตอเลอร์)

              onefile         ทำให้ไฟล์ที่ได้เป็นไฟล์ .exe ไฟล์เดียวถ้าคำสั่งนี้ไม่มีจะได้ไฟล์.exe  (อีเอ็กอี) และไฟล์อื่นๆอีกหลายไฟล์

              icon            ใส่รูปไอคอนถ้าหากไม่ใช้คำสั่งนี้จะได้รูปไอคอนเป็น Default ของโมดูล pyinstaller (ไพอินสตอเลอร์) โดยวิธีการใส่พาธไฟล์ทำได้ดังนี้ 

                                1.ให้เรานั้นนำรูปที่ต้องการโดยต้องเป็นไฟล์ .ico เท่านั้นสามารถโหลดจากอินเตอร์เน็ตหรือเอารูปที่เรามีไปแปลงได้และนำรูปทีเราต้องการไปใส่ในโฟล์เดียวกับไฟล์                                           ไพธอนที่จะแปลงเพื่อความสะดวกในการระบุพาธของไฟล์รูป

                                2.ระบุพาธของไฟล์รูป   สมมุติว่ารูปที่เราต้องการอยุ่ในพาธ D:\GIT\python_test\Mt24\te\ha2.ico   แต่ว่าไดเรกทอรี่ของเทอร์มินอลเป็น  D:\GIT\python_test\Mt24 

                                   อยู่แล้ว ดังนั้นจะได้ว่า icon=te\ha2.ico 

   

              clean          ลบแคช 

 

              te\o.py       คือพาธของไฟล์ไพธอนที่จะแปลง โดยหลักการระบุพาธเหมือนกับ การระบุพาธรุปภาพเลย

              ตัวอย่างของไดเรกทอรี่และคำสั่งแปลงไฟล์

D:\GIT\python_test\Mt24>pyinstaller --onefile --icon=te\ha2.ico --clean te\o.py

              3.เมื่อติดตั้งเสร็จแล้ว จะปรากฏข้อความนี้ในเทอร์มินอล

10395 INFO: Building EXE from EXE-00.toc completed successfully.

               4.โปรแกรมที่ได้จะอยู่ในไฟล์ dist ที่อยูในไดเรกทอรี่ของไพชาร์ม โดยสามารถกดรันโปรแกรมได้เลยโดยไม่ต้องดาวน์โหลดไลบารี่หรืออะไรเพิ่ม                        

icon
                                                                                                            icon
ผลการัน
                                                                                                          ผลการรัน

               

 สามารถศึกษาเพิ่มเติมได้จากบทความ

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สอบถาม library หรือคำสั่งดู VDO ใช้เวลาดูไปเท่าไรและดูจบแล้วหรือไม่
โดย eange08 จ 25 มี.ค. 2024 1:28 pm บอร์ด Programming - PHP
2
903
พฤ 28 มี.ค. 2024 12:25 pm โดย eange08 View Topic สอบถาม library หรือคำสั่งดู VDO ใช้เวลาดูไปเท่าไรและดูจบแล้วหรือไม่
M181 - อธิราช กุลเมือง
โดย athirach.offcial จ 25 มี.ค. 2024 10:15 am บอร์ด Dev Teams
0
9
จ 25 มี.ค. 2024 10:15 am โดย athirach.offcial View Topic M181 - อธิราช กุลเมือง
การสำรองข้อมูล Backup Joomla! ทั้งเว็บ ด้วย MJClone
โดย mindphp อ 24 มี.ค. 2024 1:33 am บอร์ด MindPHP News & Feedback
0
217
อ 24 มี.ค. 2024 1:33 am โดย mindphp View Topic การสำรองข้อมูล Backup Joomla! ทั้งเว็บ ด้วย MJClone
Start Directadmin แบบเมนนวล
โดย mindphp ศ 22 มี.ค. 2024 5:35 am บอร์ด Linux - Web Server
1
234
ศ 22 มี.ค. 2024 5:43 am โดย mindphp View Topic Start Directadmin แบบเมนนวล
คำสั่ง Command Line สำรองเว็บไซต์ บน Directadmin Backup Website ขนาดใหญ่
โดย mindphp ศ 22 มี.ค. 2024 5:31 am บอร์ด Linux - Web Server
1
465
ศ 22 มี.ค. 2024 11:52 pm โดย mindphp View Topic คำสั่ง Command Line สำรองเว็บไซต์ บน Directadmin Backup Website ขนาดใหญ่
Vmware Exsi 5 เพิ่ม HDD เป็น data store ไม่ได้เจอ Error Call "HostDatastoreSystem.QueryVmfsDatastoreCreateOptions" for
โดย mindphp พฤ 21 มี.ค. 2024 6:53 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
3
504
ศ 05 เม.ย. 2024 10:04 am โดย mindphp View Topic Vmware Exsi 5 เพิ่ม HDD เป็น data store ไม่ได้เจอ Error  Call "HostDatastoreSystem.QueryVmfsDatastoreCreateOptions" for
ถ้าใช้เมนบอร์ดที่ใส่ cpu ได้สองตัว และ cpu รันปกติแต่ vmwere
โดย Anonymous พ 20 มี.ค. 2024 3:09 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
218
พฤ 21 มี.ค. 2024 6:48 am โดย mindphp View Topic ถ้าใช้เมนบอร์ดที่ใส่ cpu ได้สองตัว และ cpu รันปกติแต่ vmwere
วิธีตั้งค่าการเก็บ Logs Error ของ OpenLiteSpeed ใช้ได้กับ Apache, Nginx
โดย mindphp พ 20 มี.ค. 2024 2:27 pm บอร์ด Linux - Web Server
0
281
พ 20 มี.ค. 2024 2:27 pm โดย mindphp View Topic วิธีตั้งค่าการเก็บ Logs Error ของ OpenLiteSpeed ใช้ได้กับ Apache, Nginx