9.1 Debugger-in işə salınması
Biz debug prosesini PyCharm üzərindən öyrənəcəyik, bu da məntiqli və əyləncəlidir. İndi buna əmin olacaqsınız.
PyCharm-da proqramınızı iki rejimdə işə sala bilərsiniz:
Proqramın işə salınma rejimləri | Paneldəki ikon | Qısa düymələr |
---|---|---|
Adi icra | ![]() |
Shift+F10 |
Debug rejimində işə salma | ![]() |
Shift+F9 |
Adi iş rejimi ilə artıq tanışsınız: proqram işə düşəcək, işləyib bitəcək və tamamlanacaq. Amma debug rejimi sizə bir çox maraqlı şeylər vəd edir.
Debug rejimi
Debug rejimi bütün proqramınızı addım-addım icra etməyə imkan verir. Daha doğru olsa, sətir-sətir. Bu müddətdə proqramın hər bir addımında (hər bir sətir kodunun işlənməsindən sonra) dəyişənlərin dəyərlərini izləyə bilərsiniz. Hətta bu dəyərləri dəyişmək də mümkündür!
Proqram debugging sənətinə minimal səviyyədə yiyələnmək üçün üç şeyi öyrənməlisiniz:
- Breakpoints (Dayanma nöqtələri)
- Step-by-step icra
- Dəyişənlərin dəyərlərini izləmək
9.2 Dayanma nöqtələri (Break Points)
IDE sizə kodda xüsusi işarələr qoymağa imkan verir — dayanma nöqtələri (break point)
. Hər dəfə, proqram debugging rejimində işə salındıqda və break point
kimi qeyd olunmuş sətrə çatdıqda, o dayandırılacaq.
Müəyyən sətrdə break point
qoymaq üçün sadəcə PyCharm-da həmin sətirin soluna klikləmək kifayətdir. Nümunə:

Nəticədə sətir dayanma nöqtəsi (break point)
ilə qeyd olunacaq və PyCharm həmin sətiri qırmızı rənglə işıqlandıracaq:

Kodun solundakı paneldə yenidən klikləməklə qoyulmuş break point
-i silə bilərsiniz.
Həmçinin, break point
-i cari sətrə qoymaq üçün isti düymələr kombinasiyasından istifadə edə bilərsiniz — Ctrl+F8. Həmin sətirdə artıq break point
varsa, bir daha Ctrl+F8 basmaq onu siləcək.
9.3 Proqramın debug rejimində işə salınması (debug)
Əgər proqramınızda ən azı bir dayanma nöqtəsi varsa, proqramı debug rejimində işə sala bilərsiniz (Shift+F9 və ya "buq ilə ikonka").
Debug rejimində işə saldıqdan sonra proqram adi qaydada işləyir. Amma kodun break point
ilə qeyd edilmiş sətrinə çatdıqda dayanır. Məsələn:

Skreenshotun yuxarı hissəsində iki dayanma nöqtəsi ilə proqram kodunu görürsünüz. Proqram 2-ci sətirdə dayanıb — mavi xəttlə işarələnmişdir
. 2-ci sətir hələ icra olunmayıb: konsolda hələ heç nə göstərilməyib.
Ekranın aşağı hissəsində debug rejiminin panellərini görürsünüz: Thread & variables
paneli, Console
paneli (ekrana çıxış), həmçinin debug rejimi üçün düymələr dəsti.
Proqramınızı dayandırmadan çıxara bilərsiniz (onu davam etdirə bilərsiniz), əgər aşağı sol tərəfdəki paneldə Resume Program
düyməsini klikləsəniz (və ya F9 düyməsini bassanız).

Belə bir düyməni (və ya F9) klikləsəniz, proqram işə davam edir, növbəti dayanma nöqtəsinə qədər və ya tamamlandıqda dayanır. Bu düyməni basdıqdan sonra gördüyümüz şey:

Proqram ikinci dayanma nöqtəsində dayandı, və konsolda "Hello"
və "and"
sözləri göstərildi – bu o deməkdir ki, üç çıxış sətirindən yalnız ikisi icra olunub.
9.4 Addım-addım icra
Əgər proqramınız debug rejimində işləyirsə, onu həmçinin addım-addım icra edə bilərsiniz: bir addım — bir sətir. Addım-addım icra üçün iki klaviatura qısa yolu var: F7 və F8: hər ikisi cari kod sətirini icra etməyə imkan verir. Amma əvvəlcə proqramınızı break point
ilə dayandırmaq lazımdır.
Əgər proqramınızı satır-satır icra etmək istəyirsinizsə, break point
-i ən əvvəl, yəni kodun ilk sətrində yerləşdirin və debug rejimində işə salın.
Proqram dayandığı zaman, siz artıq satır-satır icraya başlaya bilərsiniz. F8 düyməsini bir dəfə basmaq bir sətrin icrası deməkdir.
Proqram dayandıqdan və F8 düyməsini bir dəfə basdıqdan sonra bizim proqram belə görünəcək:

İlk sətir — print("Hello")
— artıq icra olunub və bu anki sətir ikinci sətirdir. Siz həmçinin ekranın aşağı hissəsində artıq "Hello"
sözünün çıxdığını görə bilərsiniz.
9.5 Addım-addım funksiyalara daxil olmaqla icra
Əgər proqramınızda öz funksiyalarınız varsa və istəyirsinizsə ki, debugging rejimində proqramınız təkcə addım-addım icra olunmasın, həm də funksiyalarınıza daxil olsun, o zaman «funksiyaya daxil olmaq» üçün F8 düyməsini yox, F7 düyməsini basmalısınız.
Tutaq ki, siz proqramı addım-addım icra edirsiniz və indi 5-ci sətirdə dayanmışsınız. Əgər F8 düyməsini bassanız, PyCharm sadəcə beşinci sətiri icra edəcək və altıncıya keçəcək.

Amma əgər F7 düyməsini bassanız, PyCharm hello()
funksiyasını addım-addım icra edəcək:

Hər şey çox sadədir. Əgər sizin üçün metodun içində nə baş verdiyi o qədər də vacib deyilsə, F8 düyməsini basın, yox əgər vacibdirsə — F7 düyməsini basaraq bütün kodu addım-addım icra edin.
GO TO FULL VERSION