Python 打包 exe 程序避坑指南

來源 | Python中文社區(qū)
py2exe、pyinstaller和cx_Freeze。pip install pyinstaller,即安裝完成。然后配置好環(huán)境變量。6.py所在文件夾打開cmd窗口。一般輸入pyintaller -F **.py(命令符的具體含義在下文中解釋),回車即開始打包。順利的話,會出現(xiàn)打包成功的反饋,如下圖,這時,就說明文件已經(jīng)打包完成了。dist文件夾里面就放著打包完的exe程序,使用時剪切出來就行了。如果運氣好或者本身程序比較簡單,那這個exe就能在任何電腦運行了。

FileNotFoundError: [Errno 2] No such file or directory:……hook-【庫名】.py。例如以我在打包程序中用了結巴分詞這個功能庫為例,那我要建立一個hook-jieba.py,并寫入:from PyInstaller.utils.hooks import collect_data_files
datas = collect_data_files("jieba")
~\Lib\site-packages\PyInstaller\hooks中去,再次運行pyinstaller打包既可解決該問題。no moduler named “pandas._libs.skiplist”,那就要手動import庫,解決方法打開生成的spec文件,找到 hiddenimports=[],加上要添加的庫,將其改動如下,hiddenimports=["pandas._libs.skiplist"],然后刪除dist里面的exe文件,重新用spec文件打包,pyinstaller **.spec。即可解決該問題。
-F,將所有內(nèi)容打包到一個exe中,方便發(fā)送,一般都使用這個參數(shù)。 -c,此為windows系統(tǒng)的默認選項,使用這個參數(shù),運行時會有一個黑窗控制臺。 -w,使用這個參數(shù),運行時不會出現(xiàn)黑窗控制臺。 -i 使用這個參數(shù)用于生成自定義圖標的exe,在這后面要加上ico圖片的地址。例如, pyinstaller -i D:\icons\demo.ico **.py
評論
圖片
表情
