python打包工具报错_Python打包发布神器—Pyinstaller
一前言
在windows平臺(tái)學(xué)習(xí)python的過程中,你肯定會(huì)遇到需要把.py腳本打包成.exe的情形,如此,至少有兩方面的好處:第一,你的代碼保密性更好,其他人不能直接看到python代碼;第二,打包后的exe程序無需再安裝相應(yīng)的模塊即可直接使用;其中,第二條是我們做打包工作的主要考慮,方便工具的分發(fā)和使用。
二 python打包工具簡潔
Python是一門開放、包容、優(yōu)雅的開發(fā)語言,所以,相關(guān)領(lǐng)域的模塊或工具自然是很多的,其中打包工具,比較廣泛的是以下三個(gè):
py2exe
Cx_freeze
但是,在此,我只想介紹Pyinstaller的使用,原因是:該工具使用非常簡單,只需要一條命令,無需像其他工具還要編寫setup文件;另外,該工具更新快,能夠適應(yīng)python的更新,目前發(fā)布到3.4版本了。當(dāng)然,還有其他原因,對(duì)其他同質(zhì)的工具了解不多,擁有Pyinstaller,足夠了!
三 Pyinstaller安裝方法
依稀記得在py2的時(shí)代,使用pyinstaller2.x是直接下載的windows安裝包進(jìn)行安裝,目前遷移到py3,再次關(guān)注pyinstaller時(shí),它已經(jīng)發(fā)展到了3.4,并且支持2.7 or 3.4-3.7,這點(diǎn)非常重要,可能其他打包工具還不能這么好的支持python3。
Pyinstaller的安裝變的非常簡單,如下:
pip install pyinstaller
使用pip安裝的好處是,會(huì)把相關(guān)的依賴一并安裝了。
四 Pyinstaller用法
該工具好用的主要表現(xiàn),莫過于使用簡單,打包一個(gè)python項(xiàng)目只需一條命令,如下:
Pyinstaller.exe –F -i path/youricon.ico path/yourscript.py
命令過后,腳本就被打包成exe文件了,而且圖標(biāo)也換成你指定的ico圖片了,是不是很便捷呀!
當(dāng)然,你也可以不指定exe圖標(biāo),此時(shí),無需增加-i 參數(shù),-F參數(shù)將腳本打包成單一的exe文件,一般使用該命令即可。
主要參數(shù)如下:參數(shù)含義
-F指定打包后只生成一個(gè)exe格式的文件
-D–onedir創(chuàng)建一個(gè)目錄,包含exe文件,但會(huì)依賴很多文件(默認(rèn)選項(xiàng))
-c–console, –nowindowed使用控制臺(tái),×××面(默認(rèn))
-w–windowed, –noconsole使用窗口,無控制臺(tái)
-p添加搜索路徑,在指定的路徑尋找對(duì)應(yīng)的庫。
-i添加生成程序的icon圖標(biāo)
-n為生成的exe起個(gè)名字
五報(bào)錯(cuò)及解決方法
安裝完成后,打包程序報(bào)錯(cuò):“failed to create process”
發(fā)生該報(bào)錯(cuò)的可能原因是:
1.python的安裝路徑有空格,比如安裝在Program Files (x86)目錄,pyinstaller版<3.4;
2.pyinstaller==3.4;
針對(duì)第一種情況,路徑有空格,解決方法是:
在Python安裝目錄下的Scripts中找到pyinstaller-scripts.py打開,把第一行的路徑加上引號(hào),如#!d:\program files (x86)\python36\python.exe改為#!"d:\program files (x86)\python36\python.exe",解決問題。
針對(duì)第二種情況,pyinstaller已經(jīng)是最新版本,即便python安裝路徑有空格,pyinstaller-scripts.py中解釋器的路徑也會(huì)被自動(dòng)加上引號(hào),一種可行的解決方法是:
把路徑切換到python安裝路徑的scripts目錄,執(zhí)行python pyinstaller-script.py path/YourScript.py進(jìn)行打包,即可解決問題。
六其他資源
關(guān)于python學(xué)習(xí)、分享、交流,筆者開通了微信公眾號(hào)【小蟒社區(qū)】,感興趣的朋友可以關(guān)注下,歡迎加入,建立屬于我們自己的小圈子,一起學(xué)python。
總結(jié)
以上是生活随笔為你收集整理的python打包工具报错_Python打包发布神器—Pyinstaller的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python读取data_转载 “ 理
- 下一篇: easyui表单网格列错位_《HTML5