python腳本生成exe程序


去年十一月換了新公司后,一直沒閑着,馬不停蹄地接不同的需求,一個版本一個版本的迭代,也沒時間研究python了。十一休假歸來,某日,老婆問金融量化需要學python嗎?並分享了一個公眾號文章,內容是吹噓python有多神通廣大,最后就是網課多少錢的推銷路線。給老婆誇口,有時間了教她敲代碼,解決她日常分析報告中那些數據的搜集工作。

昨天花了點時間,看了去年的python學習筆記,算是簡單基礎的復習。接着去年的內容往后面更新。之前有一個同事玩go語言,有一次拜托他幫寫了一個從excel讀數據curl發post請求的工具,exe文件,着實好用,同為腳本語言,python實現起來應該也簡單,不久后,我會用python來實現這段邏輯。言歸正傳,從基礎做起。首先python如何生成exe?

python --version
Python 3.7.1

pip show pywin32
version 225 如果沒有則執行 pip install pywin32

pip show pyinstaller
version3.5 如果沒有則執行 pip install pyinstaller

本次開發用的是eclipse,主要是eclipse用習慣了,感覺用着也上手,畢竟插件功能海量。

項目結構和腳本內容:

執行如下:等待輸入

ok 簡單點的預期:就是上述顯示能生成一個exe文件,我點擊就會獨立運行。

pyinstaller --onefile --nowindowed --icon='E:\workspace-eclipse\day1\mydat\favicon.ico' a.py

可以看到生成a.exe文件

  

把a.exe拷貝到桌面,雙擊運行:

至此,導出成exe獨立程序已經實現。嗯,能不能加個按鈕或者輸入框那樣的顯示呢,命令窗口有點不太友好呢。

python 有現成的GUI框架直接引入好了,tk比較簡單。

 修改腳本內容如下,命名為b.py

from tkinter import *
 
class Application(Frame):
    def __init__(self, master=None):
        Frame.__init__(self, master)
        self.createWidgets()
        self.pack()
    def createWidgets(self):
        self.helloLabel = Label(self, text='Please intput your name:',bd=20,fg='red')
        self.helloLabel.pack()
        self.entry1=Entry(self,bd=5,fg="black")
        self.entry1.pack()
        self.quitButton = Button(self, text='Quit', command=self.quit)
        self.quitButton.pack()
        
app = Application()
# 設置窗口標題:
app.master.title('Hello World')
# 主消息循環:
app.mainloop()

 執行命令行:

pyinstaller -F -w --icon='E:\workspace-eclipse\day1\mydat\favicon.ico' b.py

備注  -F:生成單個文件   -w : 是去掉命令行窗口     生成b.exe文件如下:

 運行b.exe,界面展示如下:

---end---

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM