Coding for KidsCoding for Kids
Cấp Độ Sáng TạoThử TháchHướng Dẫn Giáo Viên
Bình chọn tính năng
Khóa học Phát triển Python Nâng cao
Chương
>
Cấp độ

Xử lý ngoại lệ
Xử lý ngoại lệ

Mục tiêu

Đóng gói vật tư vào các hộp và bắt bất kỳ lỗi nào có thể xảy ra bằng cách sử dụng Exceptions.

Có một số vật tư khẩn cấp cần được đóng gói thành các bộ dụng cụ và lưu trữ trong các thùng chứa để sử dụng sau này. Việc này khá đơn giản và có thể được thực hiện bằng cách sử dụng các hàm thông dụng mà bạn đã học, tuy nhiên đôi khi mọi thứ không diễn ra như dự định. Trong quá trình lập trình, bạn có thể nhận thấy đôi khi lỗi xuất hiện trên màn hình, và dấu đỏ xuất hiện trên trình soạn thảo tại vị trí xảy ra sự cố. Bạn có thể giảm thiểu điều này bằng cách thiết lập các khối mã tryexcept.

Những khối mã này được sử dụng để thiết lập các ngoại lệ và bắt lỗi trước khi chúng ngăn cản mã của bạn chạy. Cách hoạt động là bạn sử dụng try trên một đoạn mã có vấn đề hoặc dễ gặp lỗi và sử dụng except để thay thế đoạn mã đó bằng một đoạn mã khác trong trường hợp xảy ra lỗi, ví dụ:

#The try code block attempts to run a code try: number + number + string #This code yeilds an error, you can't sum numbers with string except: #If an error occurs the except code block is run instead number + number + number #The code is switched out by a sum of three numbers instead

Để bắt đầu, hãy thu thập tất cả các vật liệu trên sân, bao gồm: bình nước, "thread" và ba chiếc chăn có màu: "blue blanket", "red blanket", "green blanket". Bắt đầu bằng cách đi đến đỉnh bản đồ và lấy ba chiếc chăn, sau đó đi đến dấu X sáng và sử dụng hàm collect() để lấy "thread" từ thùng chứa. Tiếp theo, di chuyển đến cuối bản đồ và thu thập tất cả các bình nước.

Ngay sau khi mọi thứ được thu thập, hãy di chuyển đến dấu X tối trên tấm thảm màu xanh để bắt đầu đặt các vật liệu bạn vừa thu thập. Đầu tiên, thêm nước và thread vào các biến với số lượng 23 đơn vị tương ứng, như sau: water_can = 2thread = 3. Sau đó, tạo các bộ dụng cụ dưới dạng biến bằng cách cộng các biến đã tạo với các chiếc chăn có màu theo định dạng sau:

blue_kit = water_can + thread + "blue blanket" red_kit = water_can + thread + "red blanket" green_kit = water_can + thread + "green blanket" # Add all elements together into kits for ease of storage

Khi các bộ dụng cụ đã được ghép lại trong các biến blue_kit, red_kit, green_kit, đã đến lúc đặt chúng vào các thùng chứa có màu tương ứng, tuy nhiên bạn có thể nhận thấy mã đang báo lỗi. Nhưng tại sao? Mọi thứ đều đúng như yêu cầu và các chỉ dẫn đã được tuân thủ. Đôi khi, dù theo trực giác, mọi thứ vẫn không hoạt động như mong muốn; trong trường hợp này, bạn không thể cộng một số với một chuỗi trong một biến.

Vậy chúng ta sẽ khắc phục điều này như thế nào? Bằng cách sử dụng các khối mã try / except để bắt lỗi và chuyển đổi nó thành một giá trị thay thế phù hợp. Đối với mỗi trong ba (3) biến, áp dụng các ngoại lệ này, trong trường hợp xảy ra lỗi sẽ thay thế đoạn mã bằng một giá trị số thay vì một chuỗi cụ thể.

try: blue_kit = water_can + thread + "blue blanket" except: blue_kit = water_can + thread + 1

Mặc dù trong trường hợp này chúng ta đã biết lỗi, nhưng có những tình huống mà giá trị bên trong các biến có thể không đơn giản hoặc có thể khác nhau tùy thuộc vào một số điều kiện nhất định, làm cho công cụ này trở nên hữu ích trong việc khắc phục sự cố hoặc bắt lỗi thời gian chạy.

Hoàn thành cấp độ bằng cách đi đến các dấu X tối trên các tấm thảm có màu, đối mặt với các thùng chứa và sử dụng hàm place() để đặt các biến bộ dụng cụ có màu tương ứng lên các thùng chứa chính xác.

Sách Mã