如何解決pycharm調(diào)試報(bào)錯(cuò)的問(wèn)題
pycharm調(diào)試報(bào)錯(cuò)的原因:
1、包名或文件名與內(nèi)置模塊名沖突;
2、PyQt兼容問(wèn)題;
3、緩存問(wèn)題,可以重新加載項(xiàng)目并清除緩存;
4、在debug時(shí)沒有設(shè)置斷點(diǎn);
5、運(yùn)行配置問(wèn)題。
調(diào)試報(bào)錯(cuò)原因分析:
(一)包名或文件名與內(nèi)置模塊沖突
解決:包名 和 文件名 都不可以定義為系統(tǒng)內(nèi)置的模塊名,有時(shí)運(yùn)行時(shí)顯示正常,但調(diào)試時(shí)會(huì)報(bào)錯(cuò),例如,包名或文件名定義為 thread
(二)PyQt的兼容問(wèn)題
解決:將默認(rèn)選項(xiàng)Auto切換為合適的選項(xiàng)
(三)緩存問(wèn)題
解決:重新加載項(xiàng)目并清除緩存
點(diǎn)擊Pycharm的File —> Invalidate Caches / Restart…,然后選擇 Invalidate and Restart
(四)斷點(diǎn)問(wèn)題
解決:在debug時(shí)沒有設(shè)置斷點(diǎn)
(五)運(yùn)行配置問(wèn)題
解決:點(diǎn)擊 Edit Configurations 配置文件路徑和python解釋器路徑
內(nèi)容擴(kuò)展:
PyCharm調(diào)試功能
常用操作步驟:
設(shè)置好斷點(diǎn),debug運(yùn)行; 然后F8 單步調(diào)試,遇到想進(jìn)入的函數(shù) F7 進(jìn)去,想出來(lái)在 shift + F8,跳過(guò)不想看的地方,直接設(shè)置下一個(gè)斷點(diǎn),然后 F9 過(guò)去;
快捷鍵詳解:
- step over(F8快捷鍵):在單步執(zhí)行時(shí),在函數(shù)內(nèi)遇到子函數(shù)時(shí)不會(huì)進(jìn)入子函數(shù)內(nèi)單步執(zhí)行,而是將子函數(shù)整個(gè)執(zhí)行完再停止,也就是把子函數(shù)整個(gè)作為一步。在不存在子函數(shù)的情況下是和step into效果一樣的。簡(jiǎn)單的說(shuō)就是,程序代碼越過(guò)子函數(shù),但子函數(shù)會(huì)執(zhí)行,且不進(jìn)入。
- step into(F7快捷鍵):在單步執(zhí)行時(shí),遇到子函數(shù)就進(jìn)入并且繼續(xù)單步執(zhí)行,有的會(huì)跳到源代碼里面去執(zhí)行。
- step into my code(Alt+Shift+F7快捷鍵):在單步執(zhí)行時(shí),遇到子函數(shù)就進(jìn)入并且繼續(xù)單步執(zhí)行,不會(huì)進(jìn)入到源碼中。
- step out(Shift+F8快捷鍵):假如進(jìn)入了一個(gè)函數(shù)體中,你看了兩行代碼,不想看了,跳出當(dāng)前函數(shù)體內(nèi),返回到調(diào)用此函數(shù)的地方,即使用此功能即可。
- Resume program(F9快捷鍵):繼續(xù)恢復(fù)程序,直接運(yùn)行到下一斷點(diǎn)處。
以上就是如何解決pycharm調(diào)試報(bào)錯(cuò)的問(wèn)題的詳細(xì)內(nèi)容,更多關(guān)于pycharm調(diào)試報(bào)錯(cuò)是什么原因的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
利用Python+Java調(diào)用Shell腳本時(shí)的死鎖陷阱詳解
這篇文章主要給大家介紹了關(guān)于利用Python+Java調(diào)用Shell腳本時(shí)的死鎖陷阱的相關(guān)資料,文章通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01解決pycharm最左側(cè)Tool Buttons顯示不全的問(wèn)題
今天小編就為大家分享一篇解決pycharm最左側(cè)Tool Buttons顯示不全的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12Python/MySQL實(shí)現(xiàn)Excel文件自動(dòng)處理數(shù)據(jù)功能
在沒有服務(wù)器存儲(chǔ)數(shù)據(jù),只有excel文件的情況下,如何利用SQL和python實(shí)現(xiàn)數(shù)據(jù)分析和數(shù)據(jù)自動(dòng)處理的功能?本文就來(lái)和大家聊聊解決辦法2023-02-02Pygame實(shí)現(xiàn)游戲最小系統(tǒng)功能詳解
這篇文章主要介紹了Pygame實(shí)現(xiàn)游戲最小系統(tǒng),Pygame是一個(gè)專門用來(lái)開發(fā)游戲的 Python 模塊,主要為開發(fā)、設(shè)計(jì) 2D 電子游戲而生,具有免費(fèi)、開源,支持多種操作系統(tǒng),具有良好的跨平臺(tái)性等優(yōu)點(diǎn)2022-11-11python-opencv 將連續(xù)圖片寫成視頻格式的方法
今天小編就為大家分享一篇python-opencv 將連續(xù)圖片寫成視頻格式的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01