溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

發(fā)布時間:2020-09-06 13:31:12 來源:腳本之家 閱讀:348 作者:木子昭 欄目:開發(fā)技術(shù)

python開發(fā)者向普通windows用戶分享程序,要給程序加圖形化的界面(傳送門:這可能是最好玩的python GUI入門實例! https://www.jb51.net/article/165763.htm),并要將軟件打包為可執(zhí)行文件(.exe結(jié)尾),那如何將.py轉(zhuǎn)為.exe ?

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

將.py轉(zhuǎn)為.exe

第一步:安裝pyinstaller(這里臨時調(diào)用了國內(nèi)豆瓣鏡像源,這樣下載比較快)

pip install pyinstaller -i https://pypi.douban.com/simple

第二步:更改編碼方式(window用戶專用)

由于windows默認編碼是gbk,而我們的開發(fā)環(huán)境(unix環(huán)境)默認編碼使用utf-8,為解決編碼問題,我們需要對pyinstaller源碼進行一些修改

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

修改讀取方式為:utf-8

pyinstaller 中winmainifest.py中的第1075行,修改為 with open(filename,encoding="UTF-8") as f:

winmainifest.py 的位置: C:\Program Files (x86)\Python36-32\Lib\site-packages\PyInstaller\utils\win32\winmanifest.py ,如果找不到,可以先嘗試第三步,如果轉(zhuǎn)換過程報錯,會打印出這個文件在本機的位置.

如果權(quán)限不夠,無法保存修改,可以先將修改后的文件,保存到桌面(保持原來的文件名),用桌面的文件替換原目錄中的文件即可!

第三步:將.py轉(zhuǎn)換為.exe

>這里以`Python GUI入門實例`為例(Python GUI入門實例傳送門: https://www.jb51.net/article/165763.htm)

命令: pyinstaller --onefile 011根據(jù)ip查詢地理位置.py

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

創(chuàng)建打包為.exe文件

第四步:運行測試

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

編譯后的目錄

生成的.exe文件在dist文件夾內(nèi)

將數(shù)據(jù)庫文件GeoLiteCity.dat拷貝到dist文件夾中 詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

完整的程序

運行可執(zhí)行文件(.exe)

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

以管理員身份運行

詳解將Python程序(.py)轉(zhuǎn)換為Windows可執(zhí)行文件(.exe)

成功運行效果

教程涉及到的資源我都通過百度網(wǎng)盤分享給大家,為了便于大家的下載,資源整合到了一張獨立的帖子里,鏈接如下:
http://www.jianshu.com/p/4f28e1ae08b1

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI