PyCharm基礎(chǔ)調(diào)試的教程
PyCharm 是一款強(qiáng)大的 Python 集成開發(fā)環(huán)境(IDE),提供了豐富的調(diào)試工具,幫助開發(fā)者在代碼中找到并解決問題。下面是我將詳細(xì)介紹 PyCharm 如何進(jìn)行調(diào)試:
一、斷點(diǎn)
斷點(diǎn)是在特定點(diǎn)暫停程序執(zhí)行的特殊標(biāo)記,以便于檢查程序狀態(tài)和行為。斷點(diǎn)可以很簡(jiǎn)單(例如,在到達(dá)某一行代碼時(shí)掛起程序),也可以涉及更復(fù)雜的邏輯(檢查其他條件、編寫日志消息等)。
設(shè)置斷點(diǎn)后,斷點(diǎn)將保留在項(xiàng)目中,直到顯式刪除它(臨時(shí)斷點(diǎn)除外)。如果帶有斷點(diǎn)的文件在外部進(jìn)行了修改,例如,通過 VCS 更新或在外部編輯器中進(jìn)行了更改,并且行號(hào)已更改,則斷點(diǎn)將相應(yīng)地移動(dòng)。注意,在進(jìn)行此類更改時(shí),PyCharm 必須處于運(yùn)行狀態(tài),否則它們將被忽視。
1. 斷點(diǎn)的類型
a. 行斷點(diǎn)
在到達(dá)設(shè)置斷點(diǎn)的代碼行時(shí)掛起程序:可以在任何可執(zhí)行代碼行上設(shè)置這種類型的斷點(diǎn)。
b. 異常斷點(diǎn)
在拋出程序或其子類時(shí)掛起程序。在 PyCharm 中,您可以為 Python 異常設(shè)置斷點(diǎn)。對(duì)于 PyCharm Professional,可以使用 Django、Jinja2、JavaScript 和 Jupyter 異常斷點(diǎn)。它們?nèi)謶?yīng)用于異常條件,不需要特定的源代碼引用。Exception
2. 設(shè)置斷點(diǎn)
a. 設(shè)置行斷點(diǎn)
單擊要設(shè)置斷點(diǎn)的可執(zhí)行代碼行左側(cè)行號(hào)位置:

b. 設(shè)置異常斷點(diǎn)
- 壓
Ctrl+Shift+F8或選擇“運(yùn)行”|”從主菜單查看斷點(diǎn)。 - 在“斷點(diǎn)”對(duì)話框中,按AltInsert或單擊 “添加”按鈕,然后選擇“Python 異常斷點(diǎn)”或“JavaScript 異常斷點(diǎn)”。
3. 管理斷點(diǎn)
a. 刪除斷點(diǎn)
- 對(duì)于非異常斷點(diǎn):?jiǎn)螕粞b訂線中的斷點(diǎn)。
- 對(duì)于所有斷點(diǎn):轉(zhuǎn)到“運(yùn)行”|”查看斷點(diǎn)
Ctrl+Shift+F8,選擇斷點(diǎn),然后單擊“刪除”Delete.
b. 將斷點(diǎn)靜音
如果一段時(shí)間內(nèi)不需要在斷點(diǎn)處停留,可以將其靜音。這允許您在不離開調(diào)試器會(huì)話的情況下恢復(fù)正常的程序操作。之后,您可以取消靜音斷點(diǎn)并繼續(xù)調(diào)試。
單擊“調(diào)試”工具窗口工具欄中的“靜音斷點(diǎn)”按鈕

二、調(diào)試功能
0. 測(cè)試代碼
def calculate_sum(numbers):
total = 0
for num in numbers:
total += num
# 在這里設(shè)置一個(gè)斷點(diǎn),以便在每次迭代時(shí)停止
# 觀察變量的值
print(f'Current total: {total}')
return total
if __name__ == "__main__":
# 創(chuàng)建一個(gè)數(shù)字列表
my_numbers = [1, 2, 3, 4, 5]
# 調(diào)用計(jì)算總和的函數(shù)
result = calculate_sum(my_numbers)
# 打印最終結(jié)果
print(f'The sum of the numbers is: {result}')
1. 設(shè)置斷點(diǎn)
在你想要觀察變量值的位置設(shè)置斷點(diǎn)。比如,我們?cè)O(shè)置一個(gè)斷點(diǎn)在print(f'Current total: {total}')行上。
在行號(hào)左側(cè)單擊,將在該行設(shè)置一個(gè)紅色的斷點(diǎn)。

2. 調(diào)試的多種啟動(dòng)方式
快捷鍵:Shift+F9 (Fn+Shift+F9)
點(diǎn)擊下圖“綠色小蟲子”按鈕

鼠標(biāo)右鍵點(diǎn)擊下圖“調(diào)試”

點(diǎn)擊菜單欄運(yùn)行——調(diào)試

3. 觀察調(diào)試控制臺(tái)
上述操作完成后,PyCharm 將開始運(yùn)行代碼,當(dāng)執(zhí)行到斷點(diǎn)時(shí),會(huì)在調(diào)試控制臺(tái)中停下。在這里,你可以查看當(dāng)前的變量值和代碼狀態(tài),以及其他調(diào)試操作。


a. 步過
Step Over (F8): 執(zhí)行當(dāng)前行,如果當(dāng)前行是一個(gè)函數(shù),則不會(huì)進(jìn)入函數(shù)內(nèi)部。

步過右側(cè)各圖標(biāo)依次如下,下面將不再截圖介紹
b. 步入
Step Into (F7): 進(jìn)入函數(shù)內(nèi)部執(zhí)行,如果當(dāng)前行不是一個(gè)函數(shù)調(diào)用,則表現(xiàn)和 Step Over 一樣。
c. 單步執(zhí)行代碼
d. 步出
Step Out (Shift + F8): 執(zhí)行完當(dāng)前函數(shù)的剩余部分,并停在調(diào)用該函數(shù)的地方。
e. 運(yùn)行到光標(biāo)處
Continue (F9): 繼續(xù)執(zhí)行程序,直到下一個(gè)斷點(diǎn)或者程序結(jié)束。
f. 重新啟動(dòng)程序
Restart (Ctrl + F5): 重新啟動(dòng)程序。(左側(cè)最上方"綠色回旋")

g. 停止調(diào)試
Stop (Ctrl + F2): 停止調(diào)試。(左側(cè)中間"紅色方框")

三、高級(jí)調(diào)試功能
PyCharm 還提供了一些高級(jí)調(diào)試功能,比如條件斷點(diǎn)、異常斷點(diǎn)、遠(yuǎn)程調(diào)試等,具體有待進(jìn)一步完善~
到此這篇關(guān)于PyCharm基礎(chǔ)調(diào)試的教程的文章就介紹到這了,更多相關(guān)PyCharm基礎(chǔ)調(diào)試內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Pycharm遠(yuǎn)程連接服務(wù)器并運(yùn)行與調(diào)試
- 使用PyCharm調(diào)試程序?qū)崿F(xiàn)過程
- pycharm2022.2遠(yuǎn)程連接服務(wù)器調(diào)試代碼實(shí)現(xiàn)
- Pycharm直接使用遠(yuǎn)程服務(wù)器代碼并調(diào)試的解決方法
- pycharm調(diào)試功能如何實(shí)現(xiàn)跳到循環(huán)的某一步
- pycharm的debug調(diào)試以及異常,Python中錯(cuò)誤的處理過程
- pycharm中加了斷點(diǎn)卻無法調(diào)試,直接執(zhí)行到程序結(jié)束如何解決
相關(guān)文章
Python黑魔法Descriptor描述符的實(shí)例解析
與迭代器和裝飾器等一樣,描述符也是Python編程中的一項(xiàng)高級(jí)技巧,這里我們就來講解Python黑魔法Descriptor描述符的實(shí)例解析:2016-06-06
基于Python做形狀相似性判斷的實(shí)現(xiàn)方法
在計(jì)算機(jī)視覺領(lǐng)域,形狀相似性判斷是圖像識(shí)別、目標(biāo)檢測(cè)、醫(yī)學(xué)影像分析等應(yīng)用的核心技術(shù),本文將系統(tǒng)解析基于Python的形狀相似性判斷方法,結(jié)合OpenCV等工具實(shí)現(xiàn)多種算法,并通過代碼示例展示具體實(shí)現(xiàn),需要的朋友可以參考下2025-10-10
如何使用virtualenv管理python環(huán)境
這篇文章主要介紹了如何使用virtualenv管理python環(huán)境,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-01-01
Python?matplotlib實(shí)戰(zhàn)之氣泡圖繪制
氣泡圖是一種多變量的統(tǒng)計(jì)圖表,可以看作是散點(diǎn)圖的變形,這篇文章主要為大家介紹了如何使用Matplotlib繪制氣泡圖,需要的小伙伴可以參考下2023-08-08
python同時(shí)遍歷數(shù)組的索引和值的實(shí)例
今天小編就為大家分享一篇python同時(shí)遍歷數(shù)組的索引和值的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11
python實(shí)現(xiàn)簡(jiǎn)單爬蟲功能的示例
本文主要是介紹python實(shí)現(xiàn)簡(jiǎn)單爬蟲功能的示例,主要實(shí)現(xiàn)了把我們想要的圖片爬蟲到本地的一個(gè)示例,有需要的朋友可以了解一下。2016-10-10

