分享你的程序,學(xué)會打包.py文件

有的時候我們寫出一些實(shí)用的腳本,小程序想要分發(fā)給朋友同事們使用,但是沒有python環(huán)境是不能運(yùn)行.py文件的,要運(yùn)行的話先要有python解釋器,還要對照代碼下載相應(yīng)的第三方包,這就很麻煩了。所以我們需要將.py文件打包為.exe文件,再分享出去就可以直接運(yùn)行了。
這里我們用到pyinstaller來進(jìn)行打包
一、安裝pyinstaller
pip install?pyinstaller直接使用pip安裝即可
二、命令行程序中進(jìn)入.py文件的目錄
cmd,power shell都可以

三、輸入打包命令
以前兩天制作的倒計時小程序?yàn)槔?/span>
pyinstaller clock.py輸入完后就會開始打包,打包完成后的文件目錄如下

打包好的程序就在dist文件夾中

這里的其他文件多為第三包的依賴文件,看起來是不是很亂?我們可以添加-F參數(shù)變?yōu)閱挝募虬J健?/span>
pyinstaller -F clock.py
這樣就只有一個.exe文件了
四、pyinstaller常用參數(shù)
-F:單文件打包模式
-D:默認(rèn)打包模式,生成依賴文件
-w:直接運(yùn)行程序,不生產(chǎn)命令行窗口(windows限定)
-i:打包的程序設(shè)置圖標(biāo)
-d:生成debug文件,方便查找錯誤
完整參數(shù)請看:
https://pyinstaller.readthedocs.io/en/v3.3.1/usage.html(英文原文)
https://blog.csdn.net/weixin_39000819/article/details/80942423
五、常見問題
1.打包產(chǎn)生的文件過大
導(dǎo)包的時候能from.....import....就盡量用這個,因?yàn)槿绻莍mport的話,在打包的時候,會將整個包都打包到exe里面。
2.‘Failed to execute script xxx’錯誤?
(1)檢查一下代碼里有沒有 input,如果代碼里有 input語句,而打包時又使用了 -w選項時就會出現(xiàn)這個錯誤。(-w為gui程序限定)
(2)打包的時候缺失某些第三包的依賴文件,須手動找到第三方包的文件復(fù)制到打包目錄下,或者打包的時候添加-p參數(shù)指定丟失包的路徑
3.打包后的程序閃退
常見的情況是程序中引用的文件采用了絕對路徑,從而在新電腦上找不到引用地址,需改為相對路徑解決。

往期推薦



以上三位小伙伴,快來聯(lián)系小編領(lǐng)取小小紅包一份哦!小編微信:Mayyy530

