WEBVTT

00:00.240 --> 00:07.410
มาพูดถึงหัวข้อที่สำคัญมากกัน หากคุณต้องการเป็นโปรแกรมเมอร์ที่ยอดเยี่ยม สิ่งนั้นเรียกว่าการดีบัก

00:07.620 --> 00:11.000
คุณเห็นไหมว่าไม่มีใครเขียนโปรแกรมที่สมบูรณ์แบบ

00:11.010 --> 00:13.410
มันเป็นไปไม่ได้จริงๆ

00:13.440 --> 00:17.430
เราจะทำผิดพลาดอยู่เสมอและโปรแกรมต่างๆ ได้รับการปรับปรุงอย่างต่อเนื่อง

00:17.640 --> 00:29.730
เราปรับปรุงโค้ดของเราอย่างต่อเนื่องเมื่อเราพบข้อผิดพลาดมากขึ้นเรื่อยๆ เนื่องจากโปรแกรมต่างๆ เต็มไปด้วยข้อผิดพลาดหรือสิ่งที่เราเรียกว่าจุดบกพร่องหรือข้อยกเว้นขณะรันไทม์เมื่อโค้ดทำงาน

00:30.300 --> 00:38.790
คุณเห็นไหม การค้นหาและลบจุดบกพร่องหรือข้อผิดพลาดเหล่านี้ออกจากโค้ดของเราเรียกว่าการดีบัก

00:39.000 --> 00:46.470
ในช่วงเวลาส่วนใหญ่ของเราในฐานะโปรแกรมเมอร์กำลังดีบั๊กโค้ด ไม่ว่าจะเป็นโค้ดของเราเองหรือโค้ดของคนอื่น

00:46.470 --> 00:49.560
และพบว่า เฮ้ ทำไมสิ่งนี้ถึงใช้ไม่ได้ผล

00:50.010 --> 00:54.690
และนักพัฒนาอาวุโสก็เก่งในการดีบักจริงๆ

00:55.380 --> 01:02.370
มาพูดคุยกันในวิดีโอนี้เกี่ยวกับคำแนะนำของฉันสำหรับการดีบักและแนวทางปฏิบัติที่ดีบางประการในวิดีโอนี้

01:02.850 --> 01:07.380
ตอนนี้ จำไว้ว่าคุณจะเก่งขึ้นในการดีบักโค้ดเมื่อคุณเขียนโค้ดมากขึ้นเรื่อยๆ

01:07.380 --> 01:12.150
ดังนั้นสิ่งที่ดีที่สุดที่คุณสามารถทำได้คือฝึกฝนต่อไป เขียนโค้ด Python ต่อไป

01:13.230 --> 01:14.940
แล้วเคล็ดลับของฉันมีอะไรบ้าง?

01:14.970 --> 01:19.320
ก่อนอื่น คุณต้องการใช้เงินกู้อย่างแน่นอน

01:19.380 --> 01:21.250
และการกู้ยืมคืออะไร?

01:21.270 --> 01:25.070
เราได้พูดคุยเกี่ยวกับมันอย่างถูกต้องเมื่อเราตั้งค่าสภาพแวดล้อมสำหรับนักพัฒนาของเรา

01:25.080 --> 01:31.260
การให้ยืมช่วยให้เราตรวจพบขณะที่เราเขียนโค้ดปัญหาบางอย่างกับโค้ดของเรา

01:31.290 --> 01:40.290
ตัวอย่างเช่น ถ้าฉันใส่ num บวกสี่ที่นี่ และฉันได้ขีดเส้นใต้สีแดง และคุณเห็นว่าที่นี่ผู้ให้กู้ Pi Flakes สังเกตเห็นก่อนที่ฉันจะเรียกใช้โค้ดด้วยซ้ำ

01:40.290 --> 01:46.320
เฮ้ มีชื่อ NUM ที่ไม่ได้กำหนดไว้

01:46.530 --> 01:51.510
การให้ยืมช่วยให้เราพบข้อผิดพลาดเหล่านี้ก่อนที่เราจะเรียกใช้โค้ดของเราด้วยซ้ำ

01:51.870 --> 01:59.550
และเราเห็นว่าเราสามารถใช้ ID เช่น pi charm ที่มีให้ยืมอยู่แล้วหรือใช้ข้อความประเสริฐหรือโค้ด

01:59.550 --> 02:06.990
Visual Studio และติดตั้งแพ็คเกจและส่วนขยายเช่น PI lent เพื่อให้มีการให้ยืมในโค้ดของเรา

02:07.020 --> 02:09.570
นั่นเป็นเครื่องมือที่สำคัญจริงๆ

02:09.600 --> 02:15.480
ต่อไป ฉันขอแนะนำให้ใช้ ID หรือ

02:16.380 --> 02:23.040
Ed เนื่องจากตัวแก้ไขและ ID เหล่านี้ โดยเฉพาะอย่างยิ่งตัวแก้ไขเฉพาะสำหรับ Python เช่น

02:23.070 --> 02:29.370
Pi char มีเครื่องมือในตัวเหล่านี้ให้เราใช้ เช่น การจัดรูปแบบอัตโนมัติตาม Pep 8

02:29.370 --> 02:34.410
จำคู่มือสไตล์ทางการของสไตล์ที่ชุมชน Python มีหรือไม่?

02:34.590 --> 02:42.600
ช่วยให้เราสามารถตรวจจับข้อผิดพลาดในโค้ดของเราได้ เช่น การเน้นและการจัดรูปแบบโค้ดของเรา

02:43.440 --> 02:47.670
ดังนั้นจึงกลายเป็นเรื่องง่ายสำหรับเราที่จะตรวจพบข้อผิดพลาดใดๆ ก่อนที่เราจะเรียกใช้โค้ด

02:48.240 --> 02:52.050
สุดท้าย คุณต้องการเรียนรู้ที่จะอ่านข้อผิดพลาด

02:52.350 --> 02:57.030
และนี่คือสิ่งที่ฉันพยายามฝึกกับคุณอย่างที่เราได้เรียนรู้ Python

02:57.330 --> 03:04.260
ตัวอย่างเช่น ถ้าฉันใช้ four plus สมมุติว่าพูดพล่อยๆ แล้วคลิก Run

03:06.230 --> 03:06.950
ทันที.

03:06.950 --> 03:07.410
เข้าใจแล้ว.

03:07.430 --> 03:10.080
เฮ้ สายหก

03:10.100 --> 03:13.370
มีข้อผิดพลาดในไฟล์ PI หลักของฉัน

03:13.580 --> 03:19.310
มีข้อผิดพลาดประเภท และฉันเห็นที่นี่ว่าฉันกำลังพยายามเพิ่ม int และสตริง

03:19.950 --> 03:24.030
เราจึงสามารถอ่านข้อผิดพลาดและเข้าใจความหมายได้

03:25.380 --> 03:28.410
บางทีฉันอาจทำอะไรแบบนี้

03:28.440 --> 03:29.790
ถ้าฉันคลิกเรียกใช้

03:30.490 --> 03:31.900
ฉันได้รับข้อผิดพลาดทางไวยากรณ์

03:33.110 --> 03:36.440
และข้อผิดพลาดทางไวยากรณ์ที่ฉันรู้หมายความว่า

03:36.440 --> 03:42.410
เฮ้ ล่าม Python พยายามอ่านโค้ดของฉัน แต่สิ่งที่คุณเพิ่งเขียนไม่ใช่ Python

03:42.410 --> 03:43.880
ฉันไม่รู้ว่าคุณกำลังทำอะไร

03:45.410 --> 03:45.890
ที่นี่.

03:45.890 --> 03:49.180
ฉันเห็นว่ามันเป็นจุดสิ้นสุดของบรรทัดขณะสแกนตัวอักษรสตริง

03:49.190 --> 03:54.590
ฉันกำลังพยายามอ่านสตริงนี้ และในทันใดโปรแกรมก็จบลงเหมือนที่คุณควรจะจบสตริง

03:54.590 --> 03:55.670
จำได้ไหม

03:56.770 --> 04:01.060
ดังนั้นความสามารถในการอ่านข้อผิดพลาดเหล่านี้จึงสำคัญมาก

04:01.450 --> 04:07.390
และเราได้พูดคุยกันบางส่วนในหลักสูตรนี้ ซึ่งบางส่วนที่พบบ่อยที่สุด เช่น ข้อผิดพลาดทางไวยากรณ์ ซึ่งคุณเพียงแค่เขียนบางสิ่งที่ล่าม

04:07.390 --> 04:10.420
Python ไม่เข้าใจ

04:10.780 --> 04:13.210
เรามีบางอย่างเช่นชื่อผิดพลาดใช่ไหม

04:13.210 --> 04:16.720
ที่เราใช้ตัวแปรที่ไม่มีอยู่

04:17.710 --> 04:19.180
ดังนั้น Python จึงไม่เข้าใจ

04:19.180 --> 04:20.970
เฮ้ ฉันไม่รู้ว่าชื่ออะไร

04:20.980 --> 04:22.810
ค่าของชื่อคืออะไร?

04:24.000 --> 04:25.650
เรามีของเช่นประเภทอากาศ

04:25.680 --> 04:31.470
นั่นคือเมื่อเราไม่ตรงกับประเภทข้อมูลและสมมุติว่าสตริงบวกสี่

04:32.220 --> 04:34.740
เรามีสิ่งต่างๆ เช่น ค่าผิดพลาด

04:35.470 --> 04:47.020
เรามีบางอย่างเช่นข้อผิดพลาดของคีย์ที่เราพยายามเข้าถึงคีย์ที่ไม่มีอยู่หรือข้อผิดพลาดของแอตทริบิวต์ที่เรากำลังพยายามเข้าถึงวิธีการของวัตถุและไม่มีวิธีการดังกล่าว

04:47.710 --> 04:54.190
ข้อผิดพลาดเหล่านี้เป็นสิ่งที่เราเห็นตลอดหลักสูตร และเราจะมาดูกันอีกสองสามข้อ

04:54.580 --> 05:02.380
ฉันจะบอกว่ามีข้อผิดพลาดประมาณ 15 ถึง 20 ข้อผิดพลาดที่เกิดขึ้นบ่อยมากซึ่งแสดง 90% ของเวลาทั้งหมด

05:03.230 --> 05:07.370
และถ้าคุณจำได้ คุณสามารถไปที่เอกสาร Python เพื่อเรียนรู้เกี่ยวกับมันได้ตลอดเวลา

05:07.370 --> 05:09.620
แต่นี่เป็นเพียงการฝึกฝนเท่านั้น

05:09.650 --> 05:16.260
หากคุณพบข้อผิดพลาดที่คุณไม่เคยเห็นมาก่อน เราขอแนะนำให้คุณไปที่เอกสารประกอบและอ่านเมื่อคุณเห็นข้อผิดพลาด

05:16.280 --> 05:19.490
คุณมักจะจำได้เมื่อมันมาถึงต่อไป

05:20.080 --> 05:23.920
แต่ให้ฉันแสดงวิธีที่ฉันโปรดปรานในการดีบักโค้ดให้คุณดู

05:25.050 --> 05:30.570
และเรียกว่า PDB หรือ Python Debugger

05:31.080 --> 05:35.070
และ PDB เป็นโมดูลในตัวใน Python ที่นี่

05:36.270 --> 05:36.750
อีกครั้ง.

05:36.750 --> 05:43.470
โปรดจำไว้ว่า โมดูลในตัวของเราเป็นส่วนหนึ่งของไลบรารีมาตรฐานที่มาพร้อมกับ Python และ PDB เป็นตัวดีบัก

05:43.470 --> 05:46.200
Python สำหรับล่ามเชิงโต้ตอบ

05:47.400 --> 05:51.180
และคุณสามารถอ่านเกี่ยวกับมันได้ที่นี่ แต่ให้ฉันแสดงให้คุณเห็นว่ามันทำอะไรได้บ้าง

05:52.460 --> 05:52.860
คุณเห็น.

05:52.880 --> 05:58.070
PDB มีประโยชน์มากเพราะช่วยให้เราโต้ตอบกับโค้ดได้

05:58.550 --> 06:08.210
ก่อนหน้านี้เมื่อเรามีฟังก์ชัน สมมุติว่าเรามีฟังก์ชัน ADD และเรามี num หนึ่ง num

06:08.630 --> 06:14.630
สอง แล้วฟังก์ชันนี้จะส่งกลับ num หนึ่ง บวก num สอง

06:15.630 --> 06:24.930
ก่อนหน้านี้ ถ้าเราต้องการ สมมติว่าดีบักโค้ดนี้ และสมมติว่าเรากำลังเพิ่ม 4 บวกกับคำที่ไม่มีความหมาย และทำให้เรามีข้อผิดพลาด

06:26.760 --> 06:33.870
ขั้นตอนแรกที่ฉันจะทำคือเพิ่มการพิมพ์ที่นี่เพื่อที่ฉันจะได้บอกว่าพิมพ์

06:33.870 --> 06:35.160
เฮ้ เกิดอะไรขึ้น

06:35.160 --> 06:35.610
ให้ฉันดู.

06:35.610 --> 06:38.130
ที่หนึ่งและที่สองและสิ่งที่มันให้มา

06:38.970 --> 06:43.170
และการพิมพ์เป็นวิธีที่รวดเร็วและง่ายดายในการดีบักโค้ดของคุณ

06:43.530 --> 06:48.480
ฉันใช้มันตลอดเวลา แต่ PDB ให้พลังพิเศษแก่เราเล็กน้อย

06:49.780 --> 06:51.840
เราก็เลยใช้ได้แบบนี้

06:51.850 --> 07:01.540
เราเพียงแค่นำเข้า PDB และแทนที่จะใช้บางอย่างเช่นฟังก์ชันการพิมพ์ เราสามารถพูดง่ายๆ ว่า ขอเพิ่มช่องว่างในนี้

07:01.540 --> 07:08.650
เราสามารถพูด PDB สำหรับดีบักเกอร์ Python แล้วพูด set trace

07:09.310 --> 07:15.430
และตั้งค่าการติดตาม ฉันจะบอกว่าเป็นวิธีที่มีประโยชน์มากที่สุดที่เรามีกับวัตถุ PDB นี้ที่เรานำเข้า

07:16.520 --> 07:18.830
คุณจะเห็นเมื่อฉันเรียกใช้ set method

07:22.300 --> 07:29.560
ตอนนี้มันทำให้ฉันมีตัวดีบัก Python แบบโต้ตอบซึ่งตอนนี้ฉันสามารถพิมพ์คำสั่งที่นี่และทดสอบโค้ดของฉันได้จริง

07:30.290 --> 07:36.360
และนี่คือส่วนที่น่าสนใจในตอนนี้ใน PDB นี้ ฉันอยู่ในบรรทัดที่แปด

07:36.380 --> 07:41.630
ดังนั้นรหัสของฉันพยายามเรียกใช้ แต่แล้วมันก็หยุดชั่วคราวทันทีที่มันบอกว่า PDB ตั้งค่าการติดตาม

07:41.630 --> 07:48.170
และตอนนี้ฉันอยู่ในโลกนี้ และฉันสามารถทดสอบว่าเกิดอะไรขึ้น เพื่อที่ฉันจะได้พูดจริงๆ ว่า เฮ้ คุณหนึ่ง มันคืออะไร?

07:48.200 --> 07:49.400
อืม หนึ่งคือสี่

07:49.400 --> 07:50.420
แล้วอันดับสองล่ะ

07:50.750 --> 08:00.050
num two เป็น string และฉันสามารถเป็นได้ โอ้ ฉันกำลังพยายามเพิ่ม string และ int สิ่งนี้ใช้ไม่ได้ ดังนั้นฉันสามารถตรวจจับข้อผิดพลาดด้วยวิธีนี้ได้เช่นกัน

08:00.680 --> 08:06.140
ตอนนี้ PDB แบบโต้ตอบนี้มีสิ่งที่เป็นประโยชน์มากมาย

08:06.140 --> 08:08.270
ดังนั้นถ้าฉันพิมพ์ความช่วยเหลือที่นี่

08:09.670 --> 08:10.300
คุณเห็นว่า?

08:10.300 --> 08:14.140
ฉันมีคำสั่งที่ฉันสามารถใช้ได้ใน PDB

08:14.260 --> 08:16.510
ดังนั้นฉันจึงมีตันที่นี่

08:16.510 --> 08:21.510
ฉันมีทางออกซึ่งฉันคิดว่ากำลังจะออกจาก PDB ซึ่งเป็นดีบักเกอร์ Python

08:21.520 --> 08:23.020
แต่ฉันก็มี

08:23.780 --> 08:24.710
สิ่งที่ชอบ

08:25.490 --> 08:26.570
สมมติว่ารายการ

08:26.570 --> 08:27.740
มาดูกันว่ามีรายการอะไรบ้าง

08:27.740 --> 08:31.970
ดังนั้นเมื่อฉันพิมพ์รายการที่นี่และตอนนี้เว็บไซต์เป็นจริง

08:32.820 --> 08:35.940
ไม่แสดงให้ฉันเห็นมากเกินไป แต่หวังว่าคุณจะยังเห็นรายการอยู่

08:37.110 --> 08:38.940
และฉันเดาเอาท์พุตบางอย่าง

08:38.940 --> 08:46.410
ฉันเห็นว่าฉันได้รับรายการโค้ดและ OC ของฉัน แต่สมมติว่าฉันไม่รู้ว่ารายการใดทำงานได้ดี

08:47.280 --> 08:50.970
PDB ช่วยให้เราสามารถพิมพ์ ช่วยเหลือ แล้วแสดงรายการ

08:51.670 --> 08:57.700
และเมื่อเราทำเช่นนั้น มันจะให้เอกสารกับเราจริง ๆ เหมือนกับที่เรามีที่นี่

08:58.720 --> 09:00.820
ถ้าเราไปที่สมมติว่ารายการ

09:03.370 --> 09:03.910
มาดูกัน.

09:03.910 --> 09:05.470
รายการ รายการ รายการ รายการ.

09:06.130 --> 09:06.880
ที่นี่.

09:06.880 --> 09:09.520
มันให้เอกสารกับฉันที่นี่

09:09.520 --> 09:12.160
ดังนั้นจึงบอกว่ารายการแหล่งที่มาสำหรับไฟล์ปัจจุบัน

09:12.610 --> 09:12.880
ไม่เป็นไร.

09:12.880 --> 09:15.940
ดังนั้นจึงแสดงรายการซอร์สโค้ดที่เราเขียน

09:16.030 --> 09:17.080
โอเค เจ๋งไปเลย

09:17.080 --> 09:18.190
มีอะไรอีกบ้าง?

09:19.090 --> 09:25.330
เรายังมีบางอย่างเช่น step หรือ se สำหรับระยะสั้นและขั้นตอนนั้นเจ๋งจริงๆ

09:26.970 --> 09:29.910
ลองใช้ clear เพื่อนำสิ่งนี้ขึ้นไปบนสุด

09:29.910 --> 09:33.720
ดังนั้นฉันจะพูดให้ชัดเจนเพื่อที่มันจะล้างความแตกแยกทั้งหมด

09:35.480 --> 09:36.230
มาทำกัน

09:37.400 --> 09:39.460
มาทำให้มันใหญ่ขึ้นอีกหน่อยเพื่อให้คุณได้เห็น

09:39.470 --> 09:39.970
ไปเลย

09:39.980 --> 09:40.580
มันดีกว่า.

09:40.610 --> 09:40.880
ไม่เป็นไร.

09:40.880 --> 09:47.120
ตอนนี้ผมสามารถทำอะไรบางอย่างเช่น step และ step จะทำให้เราสามารถไปยังบรรทัดถัดไปได้

09:47.120 --> 09:49.850
ดังนั้น อีกครั้ง ถ้าเราทำให้มันใหญ่ขึ้นอีกนิด

09:50.860 --> 09:53.440
สเต็ปจะบอกว่า เฮ้ ไปที่บรรทัดที่เก้า

09:53.440 --> 09:54.370
มาดูกันว่าจะเกิดอะไรขึ้น

09:54.370 --> 09:55.660
ฉันจะพิมพ์ในขั้นตอน

09:57.630 --> 09:57.840
โอ้.

09:57.840 --> 09:58.860
และฉันได้ก้าวสองครั้ง

09:58.860 --> 09:59.910
งั้นมาถูกที่เลย

10:01.730 --> 10:02.600
และดูนั่นสิ

10:02.720 --> 10:06.770
ฉันไปที่บรรทัดถัดไปในรหัสของฉันและจะได้รับ

10:06.800 --> 10:08.030
เฮ้ คุณพิมพ์ผิดเหรอ?

10:08.030 --> 10:08.510
ข้อผิดพลาด.

10:08.540 --> 10:09.520
ข้อผิดพลาดที่เราได้รับ

10:09.530 --> 10:11.250
ลองเพิ่มอีกบรรทัดในนี้

10:11.270 --> 10:22.310
สมมติว่าเรากำลังพยายามบวก 4 บวก 5 ในนี้ หรือ 4 คูณด้วย 5 แล้วกำหนดให้กับตัวแปร

10:24.170 --> 10:26.450
ถ้าฉันหยุดสิ่งนี้และเรียกใช้สิ่งนี้อีกครั้ง

10:28.570 --> 10:30.100
ตอนนี้ฉันอยู่ข้างใน

10:30.130 --> 10:30.820
ตรงนี้.

10:32.640 --> 10:35.310
ถ้าฉันพิมพ์ชื่อชาฉันจะได้ชื่อ

10:35.310 --> 10:35.760
อากาศ.

10:35.880 --> 10:37.560
ชาไม่ได้กำหนดเพราะ

10:37.560 --> 10:42.630
ฉันอยู่ในรหัสที่นี่ในบรรทัดที่แปด แต่เรายังไม่ได้วิ่งไปที่บรรทัดที่เก้า

10:42.630 --> 10:44.220
มาทำขั้นตอนกันเลย

10:45.120 --> 10:46.800
และตอนนี้ฉันอยู่ด้านถัดไป

10:47.940 --> 10:52.950
ถ้าผมทำ pt ตอนนี้ ผมจะได้ เฮ้ t เท่ากับ 20

10:53.190 --> 10:53.760
สุดยอด.

10:53.760 --> 10:57.570
ดังนั้นขั้นตอนที่ฉันสามารถก้าวผ่านโค้ดซึ่งมีประโยชน์จริงๆ

10:58.080 --> 11:03.720
ฉันยังมีสิ่งต่าง ๆ เช่น ทำต่อ ซึ่งช่วยให้ฉันดำเนินการต่อผ่านโค้ดได้จนกว่าฉันจะส่งคืนบางสิ่ง

11:03.720 --> 11:06.750
และฉันดำเนินการต่อและออกจาก PDB แล้วดูสิ่งนั้น

11:06.750 --> 11:07.620
ฉันได้รับข้อผิดพลาด

11:10.100 --> 11:11.570
เรียกใช้สิ่งนี้อีกครั้ง

11:11.600 --> 11:18.560
คำสั่งที่มีประโยชน์อีกอย่างหนึ่งคือ a และ a ให้อาร์กิวเมนต์ทั้งหมดของฟังก์ชันปัจจุบันที่เรามีอยู่

11:18.560 --> 11:19.700
ดูนั่นสิ

11:19.700 --> 11:22.610
ฉันได้รับข้อโต้แย้งทั้งหมดซึ่งเป็นประโยชน์จริงๆ อีกครั้ง

11:23.240 --> 11:25.190
นอกจากนี้ยังมีคำสั่ง w.

11:25.860 --> 11:31.050
ซึ่งแสดงให้ฉันเห็นบริบทของบรรทัดปัจจุบันที่กำลังดำเนินการอยู่

11:32.200 --> 11:35.710
คุณจะเห็นว่าเราอยู่ที่ไหน เราอยู่ในโฆษณา

11:36.240 --> 11:36.990
การทำงาน.

11:38.130 --> 11:43.740
เราเรียกมันด้วยข้อโต้แย้งเหล่านี้ และตอนนี้เรากำลังจะเรียกใช้บรรทัดนี้

11:45.970 --> 11:48.040
และสุดท้าย ในขณะที่เรากำลังแก้ไขข้อบกพร่องนี้

11:48.040 --> 11:51.460
เอาล่ะ ฉันคิดว่าในที่สุดฉันก็เห็นว่าเรามีข้อผิดพลาด

11:51.460 --> 11:59.500
เราควรจะให้ตัวเลขนี้เพื่อที่ฉันจะได้ออกจากที่นี่และเพียงแค่แก้ไขเป็นห้า

11:59.620 --> 12:02.950
ตอนนี้ฉันสามารถลบ PDB และทุกอย่างได้

12:02.950 --> 12:05.410
ควรทำงานได้ดีกับรหัสของฉัน

12:06.680 --> 12:07.280
สุดยอด.

12:07.760 --> 12:12.710
ดังนั้น PTB จึงยอดเยี่ยมมากในการก้าวผ่านโค้ดและดีบั๊กของคุณ และลองทำสิ่งที่แตกต่างกัน

12:12.710 --> 12:20.900
มันต้องใช้เวลาฝึกฝนสักหน่อย แต่หลังจากเล่น PDB มาทั้งวัน คุณจะเก่งในการดีบั๊กได้จริงๆ

12:20.930 --> 12:28.730
หลังจากวิดีโอนี้ ฉันแนะนำให้คุณเขียน PDB และหวังว่าคุณจะมีไฟล์ Python ที่ใหญ่พอที่คุณจะสามารถก้าวข้ามและทดลองกับคำสั่งต่างๆ

12:28.730 --> 12:37.010
โดยใช้ความช่วยเหลือ โดยใช้รายการเพื่อดูว่าคุณมีอะไรบ้าง

12:38.060 --> 12:39.710
อันที่จริง ฉันต้องการแสดงสิ่งสุดท้ายให้คุณดู

12:40.340 --> 12:44.210
สมมุติว่าเรากลับไปที่โค้ดของเรา PDB set trace

12:44.780 --> 12:45.800
ฉันคลิกเรียกใช้

12:47.670 --> 12:53.430
ฉันสามารถทำสิ่งนี้โดยที่ฉันสังเกตเห็นว่าฉันพิมพ์ A และฉันมี

12:53.430 --> 13:00.330
เอาล่ะ รหัสของฉันใช้งานได้ แต่ฉันสามารถเปลี่ยน num two ให้เท่ากับพูดพล่อยๆ ได้ไหม

13:02.230 --> 13:04.320
มาดูกันว่าตอนนี้ฉันจะทำต่อไปหรือไม่

13:06.100 --> 13:08.740
และทำต่อไปเพื่อเรียกใช้บรรทัดสุดท้ายนี้

13:10.120 --> 13:11.140
ฉันได้รับอากาศ

13:11.200 --> 13:19.710
ดังนั้นฉันจึงสามารถเปลี่ยนตัวแปรที่นี่และเขียนโค้ด Python เพื่อทดสอบฟังก์ชันของฉันได้

13:19.720 --> 13:21.190
ตอนนี้กำลังทำงานอยู่

13:21.190 --> 13:25.300
ฉันสามารถทดสอบได้ เฮ้ จะเกิดอะไรขึ้นถ้าเราเปลี่ยนตัวแปรนี้เป็นค่าอื่น

13:26.220 --> 13:28.050
อีกครั้งมีประโยชน์มากมาก
