卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

如何解決Pyinstaller打包運(yùn)行提示AttributeError

Pyinstaller是一款能將Python腳本打包成EXE可執(zhí)行文件的工具。與其他兩款類似的工具py2exe和cxfreeze相比,小編認(rèn)為Pyinstaller比較簡(jiǎn)單粗暴。然而,很多人在使用Py

Pyinstaller是一款能將Python腳本打包成EXE可執(zhí)行文件的工具。與其他兩款類似的工具py2exe和cxfreeze相比,小編認(rèn)為Pyinstaller比較簡(jiǎn)單粗暴。然而,很多人在使用Pyinstaller進(jìn)行打包時(shí)會(huì)遇到一個(gè)問(wèn)題:在python解釋器中運(yùn)行沒(méi)有任何問(wèn)題的腳本,但用Pyinstaller打包之后,無(wú)法運(yùn)行。那么為什么會(huì)出現(xiàn)這個(gè)問(wèn)題呢?該如何解決呢?接下來(lái),小編將手把手教大家如何解決這個(gè)問(wèn)題。

問(wèn)題原因分析

首先,讓我們看一下小編寫(xiě)的一個(gè)python腳本,功能相當(dāng)簡(jiǎn)單,用tkinter模塊創(chuàng)建窗口,然后調(diào)用showinfo顯示一個(gè)提示框。在解釋器上運(yùn)行是完全沒(méi)有任何問(wèn)題的。

接下來(lái),我們嘗試使用Pyinstaller進(jìn)行打包。在命令提示符中cd到腳本所在目錄,然后運(yùn)行Pyinstaller -F 腳本名。通常情況下,如果腳本能正常運(yùn)行,打包也應(yīng)該能成功。

然而,當(dāng)我們找到dist目錄并雙擊運(yùn)行程序時(shí),發(fā)現(xiàn)程序只是閃過(guò)而已。此時(shí),遇到這種一閃而過(guò)的問(wèn)題,我們無(wú)法看到命令行提示的錯(cuò)誤信息,應(yīng)該怎么辦呢?其實(shí)很簡(jiǎn)單,我們只需要在命令行下去運(yùn)行它就行了。在dist目錄下運(yùn)行生成的exe文件,此時(shí)可以看到錯(cuò)誤提示:

AttributeError: 'module' object has no attribute 'messagebox'

解決方法

現(xiàn)在讓我們回顧一下我們的代碼。有沒(méi)有只聲明了tkinter主模塊,但沒(méi)有聲明其下的messagebox子模塊呢?所以,遇到這樣的問(wèn)題,即"object has no attribute"提示,我們應(yīng)該去看看代碼。

聲明相關(guān)的模塊即可。在代碼中加入import 即可。

現(xiàn)在重新運(yùn)行經(jīng)過(guò)Pyinstaller -F打包后的程序,問(wèn)題肯定得到解決了。

至此,問(wèn)題解決完畢。希望本文對(duì)大家有所幫助。

標(biāo)簽: