python如何升級pip pyqt用pyinstaller打包出exe文件后運行不了?如圖?
pyqt用pyinstaller打包出exe文件后運行不了?如圖?原因是我的界面是用QtDesigner生成的ui文件,但是pyinstaller沒有打包進來,把相關的ui文件以及用pyuic生成的p
pyqt用pyinstaller打包出exe文件后運行不了?如圖?
原因是我的界面是用QtDesigner生成的ui文件,但是pyinstaller沒有打包進來,把相關的ui文件以及用pyuic生成的py文件復制到start.exe目錄下即可運行!如果pyinstaller用了-F命令,只生成一個exe, 也需要按照上面的方法復制相應的ui及ui生成的py文件來exe目錄,且目錄結構與原始項目結構要一致。
如何解決py2exe打包PyQt程序出錯的問題?
pyinstaller最新版暫不支持py3.6.但是官方在GitHub已經更新了源碼:pyinstaller/pyinstaller
下載官方源碼,把里面的pyinstaller文件夾放到python系統(tǒng)安裝目錄,比如C:UsersAdministratorAppDataLocalProgramsPythonPython36Libsite-packagesPyInstaller
留個備份,用官方源碼把上面的文件替換掉。
如何使用pyinstaller打包python腳本?
先pip install pyinstaller安裝打包模塊,然后命令行進入腳本的相應目錄。
如上圖,UI_pySide.py是要打包的模塊,
-w是去除命令窗口,-F是創(chuàng)建可執(zhí)行文件。
-i是添加程序圖標,calender.ico是打包后的exe圖標。
稍等片刻,即可在同目錄的dist下找到exe文件。
以上就是常用的參數。
如果需要更詳細的參數,在命令行輸入pyinstaller -h 即可獲取參數說明。
參數說明
與其四處找說明,為什么不用-h獲取官方的說明呢?
相信一點點英文應該也難不倒。
最后附個打包模塊對比圖。
如果對你有幫助,請你點贊。
既然Python是用C實現的,那為什么Python不能直接生成exe呢?
C語言其實是一種比較“古老”而且“底層”的語言。其執(zhí)行效率,僅次于匯編語言。
說其古老,是因為C語言的出現很早。
雖然Fortran、Cobol語言出現比C語言更早,但是現代主流操作系統(tǒng)(Windows、Mac Os、linux、iOS、Android、Unix)全部脫胎于C語言。
說它底層,是因為C語言設計之初就是為了同時編寫匯編語言。理論上可以全部用匯編寫。而匯編語言是執(zhí)行效率最高的語言。
所以Python用C語言寫一點也不奇怪。這和它能不能生成Exe一點關系都沒有。
Exe文件是Windows平臺的私有格式。最簡單的Exe是Com可執(zhí)行文件。Exe文件實際上是一個引導程序 一個解釋程序組成的。
Python語言生成的代碼,只需要配以引導程序和解釋程序,就可以作為Exe文件執(zhí)行。
所以,Python生成Exe文件一點難度都沒有。只是它愿不愿意提供的問題。