pyinstaller 的基本使用方法
情況1:當(dāng)所使用的代碼都在一個(gè).py文件中,且該代碼中沒(méi)有調(diào)用其他文件和import自己寫(xiě)的函數(shù)時(shí)
例如:
打包下面這個(gè)檢查輸入的ip是否符合規(guī)范的程序ipcheck.py,程序中只Import了自帶的庫(kù)re
from re import compile
ipAddr = input("請(qǐng)輸入一個(gè)ip: ")
compile_ip = compile(
'^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$')
if compile_ip.match(ipAddr):
print(True)
else:
print(False)
下載pyinstaller
pip install pyinstaller
使用Pyinstaller打包。先進(jìn)入該程序所在的文件夾,在文件資源管理器的文件路徑處輸入cmd,打開(kāi)一個(gè)console。在界面中輸入下面的語(yǔ)句:
pyinstaller -F ipcheck.py
待該指令執(zhí)行完畢,可在.py文件所在文件夾內(nèi),發(fā)現(xiàn)兩個(gè)新建的文件夾build/和dist/,以及一個(gè)新建的文件ipcheck.spec。在dist文件夾下可以找到一個(gè).exe文件,直接雙擊該文件即可執(zhí)行程序。
在這里附上pyinstaller的使用手冊(cè):pyinstaller user manual
進(jìn)階使用方法(填坑方式)
情況2:一般來(lái)說(shuō),當(dāng)我們做一個(gè)比較大的項(xiàng)目的時(shí)候,難免會(huì)遇到調(diào)用不同.py文件中的自建函數(shù),
比如,如果我在代碼中加入這一行:
from file_loader import xml_loader
文件file_loader.py與ipcheck.py的文件夾層級(jí)關(guān)系如下,xml_loader是我在file_loader.py中自定義的一個(gè)函數(shù)。
|--dir
|--ipcheck.py
|--file_loader.py
此時(shí)如果還是按照情況1去操作,在運(yùn)行exe時(shí),會(huì)出現(xiàn)下列問(wèn)題:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-736641.html
也就是說(shuō)在打包exe時(shí),我的自定義函數(shù)文件并沒(méi)有被一起打包進(jìn)去,導(dǎo)致找不到file_loader.py這個(gè)文件。那么此時(shí)我的解決方式為修改ipcheck.spec中的內(nèi)容:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-736641.html
#pathex=[], 將這一行改為下面的一行
pathex=[
到了這里,關(guān)于使用pyinstaller打包python文件遇到的問(wèn)題和解決方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!