บางครั้งเรารู้สึกอยากสร้างสรรค์สิ่งที่แตกต่างออกไปซึ่งน่าตื่นเต้นมาก และโดยธรรมชาติของมนุษย์ เราก็ชอบที่จะแบ่งปันมันเสมอ
Python ยังเติมเต็มความปรารถนาเหล่านั้น เมื่อใช้ Python หากเราต้องการแชร์โปรแกรม Python กับเพื่อนของเรา เราสามารถทำได้ เพียงแค่ติดตั้ง Python เวอร์ชันเดียวกันกับโมดูลทั้งหมดที่ใช้ในโปรแกรมของเครื่อง
ก่อนอื่นเราต้องติดตั้งโมดูล CX_Freeze โดยใช้ pip install CX_Frezze คำสั่งในพรอมต์คำสั่ง
ขั้นตอนแรกคือการแก้ไขงานนี้ การแปลงโปรแกรมหลาม เราต้องการโมดูลไลบรารีมาตรฐาน ที่นี่เราใช้ urllib และ re โมดูลที่เราแยกวิเคราะห์ python.com
ตัวอย่าง
import urllib.request import urllib.parse import re import time my_url = 'https://www.python.com/' my_values = {'s' : 'basics', 'submit' : 'search'} my_data = urllib.parse.urlencode(my_values) my_data = data.encode('utf-8') my_req = urllib.request.Request(my_url, my_data) my_resp = urllib.request.urlopen(my_req) my_respData = my_resp.read() my_paragraphs = re.findall(r'<p>(.*?)</p>',str(my_respData)) for p in my_paragraphs: print(p) time.sleep(20)
ในที่นี้เราใช้โหมดสลีป 20 วินาทีในตอนท้าย ดังนั้นเราจึงเห็นผลลัพธ์ก่อนที่จะปิด
โปรแกรมนี้ถูกบันทึกเป็นชื่อไฟล์ "pythonCX_Freeze.py"
ขั้นตอนต่อไปคือการสร้างไฟล์ติดตั้งและไฟล์นี้มีชื่อว่า "setup.py"
โค้ดตัวอย่าง
from cx_Freeze import setup, Executable setup(name = "pythonCX_Freeze" , version = "0.1" , description = "" , executables = [Executable("pythonCX_Freeze.py")])
ในโปรแกรมนี้ เรานำเข้า pythonCX_Freeze การติดตั้งและปฏิบัติการ ต่อไปเราจะเรียกฟังก์ชัน setup() ที่มี 4 พารามิเตอร์ ชื่อพารามิเตอร์แรก นี่คือชื่อของโปรแกรมที่เราต้องการรัน ที่สองคือเวอร์ชัน นี่คือหมายเลขเวอร์ชันที่จะให้ คำอธิบายถ้าเราต้องการ ให้เขียนบรรทัดที่จำเป็น มิฉะนั้น เว้นว่างไว้ และอันสุดท้ายเป็นฟังก์ชันที่เรียกใช้งานได้ พารามิเตอร์
ต่อไปเราเปิด cmd.exe จากนั้นไปที่ไดเร็กทอรีที่มี setup.py และสคริปต์
จากนั้นเราเรียกใช้ python setup.py build .
ตอนนี้ให้ไดเร็กทอรี build และภายในไดเร็กทอรีนี้ เราจะพบไดเร็กทอรีอื่น และภายในไดเร็กทอรีนั้น เราจะพบว่าไฟล์เรียกทำงานของเรา หากทำทุกขั้นตอนถูกต้องแล้ว ควรแยกวิเคราะห์ผลการค้นหาของแบบฟอร์มพื้นฐานบน python.com และแสดงผลเป็นเวลา 20 วินาทีก่อนปิด