Hãy thử một ví dụ khác ở đây.
Giả sử tôi đang tạo một hàm tính tổng đơn giản.
Vâng, tôi biết nó đã tồn tại trong Python, nhưng chúng tôi sẽ chỉ tạo riêng của chúng tôi.
Một đơn giản có num một và num hai.
Và ở đây chúng ta sẽ chỉ trả về số một cộng với số hai.
Bây giờ, nếu chúng ta chỉ đơn giản làm một số.
Và một số nữa.
Và tôi đã chạy chương trình của chúng tôi.
Thôi, hãy in nó ra trước.
Tôi bấm chạy.
Tôi nhận được một và hai vì nó chỉ thêm hai chuỗi với nhau.
Vì vậy, chúng ta chỉ cần làm điều này và nhấp vào Chạy.
Tôi gặp lỗi kiểu phải là chuỗi không phải là int.
Vì vậy, dựa trên những gì chúng ta đã học được, chúng ta sẽ xử lý điều này như thế nào?
Chà, chúng ta có thể thêm một khối tri vào đây và bọc hàm này.
Hoặc chúng tôi có thể xây dựng nó trực tiếp vào chức năng của chúng tôi.
Vì vậy, tôi có thể nói cố gắng.
Phần này.
Và ở đây có một điều khoản thoát.
Điều đó nói lên có lẽ nếu chúng ta gặp bất kỳ loại lỗi nào.
Chúng tôi sẽ in.
Có cái gì đó không đúng.
Nếu tôi chạy cái này.
Tôi nhận được một cái gì đó là sai.
Nhưng đây là vấn đề.
Bằng cách thực hiện chấp nhận không có ngoại lệ.
Là một lập trình viên, tôi đang đọc bài này và tôi không thực sự biết điều gì đã thực sự xảy ra vì nó có thể
có rất nhiều thứ.
Vì vậy, một thực tiễn tốt là luôn bắt những lỗi này dựa trên một ngoại lệ cụ thể.
Bằng cách này, bạn biết lỗi là gì và bạn có thể mô tả kỹ hơn.
Vì vậy, ở đây chúng tôi có thể nói lỗi loại và lỗi loại này chúng tôi chỉ có thể nói, vui lòng nhập số.
Vì vậy, nếu tôi chạy lại điều này, vui lòng nhập số.
Vậy bây giờ.
Được rồi.
Lỗi của tôi là mô tả nhiều hơn.
Tôi nên sửa lỗi này và đảm bảo rằng tôi nhập số.
Đáng kinh ngạc.
Bây giờ một mẫu phổ biến khi thực hiện xử lý lỗi là thực hiện một cái gì đó như lỗi kiểu này và sau đó làm một cái gì đó
giống như một biến.
Vì vậy, bất kỳ biến nào chúng ta muốn trong trường hợp của mình, hãy chỉ nói lỗi.
Vì vậy, tôi đang nói, này, nếu bạn gặp lỗi loại, hãy để chúng tôi sử dụng lỗi trong thông báo lỗi của chúng tôi để tôi có thể nói ở đây.
Cộng với không khí.
Vì vậy, nếu tôi chạy và hãy thực hiện một chuỗi ở đây, nếu tôi chạy.
Nhìn kìa.
Tôi nhận được lỗi in.
Hãy để tôi mở ra một chút để bạn có thể thấy rõ ràng.
Nhìn kìa.
Nó thực sự mang lại cho tôi không khí mà tôi muốn.
Để tôi có thể thấy điều đó trực tuyến.
Năm.
Trên dòng này, tôi nhận được lỗi loại không được hỗ trợ trình mở và tôi gặp lỗi mô tả về những gì đang xảy ra, vì vậy có thể
tôi có thể sử dụng nó trong thông báo đầu ra của mình.
Nhưng điều gì sẽ xảy ra nếu tôi không muốn sử dụng cái này và tôi chạy?
Được rồi.
Mọi thứ đang hoạt động trở lại.
Nếu tôi làm.
Thêm.
Tại đây và tôi nhấp vào Chạy.
Và điều này thực sự phức tạp, nhưng nó nói ở đây trong quá trình xử lý ngoại lệ ở trên, mà tôi đang làm.
Một ngoại lệ khác đã xảy ra.
Oh Boy.
Tôi cố gắng xử lý một cái gì đó và tôi đã gặp lỗi trong lỗi đó.
Vì vậy, điều này đôi khi là khó khăn.
Nhưng ý nghĩa của nó là những gì chúng ta nhận ra ở đây thực sự là một đối tượng lỗi.
Đó là một ngoại lệ được xây dựng trong Python.
Bạn không thể thêm vào đây theo cách tôi có.
Thay vào đó, chúng tôi muốn sử dụng một chuỗi F.
Vì vậy, tôi làm f và sau đó ở đây vượt qua nó lỗi.
Vì vậy, đó bây giờ.
Nếu tôi chạy cái này.
Lại.
Vui lòng nhập số.
Loại toán hạng không được hỗ trợ s bốn cộng với int và str.
Vì vậy, tôi thực sự nhận được lỗi này có sẵn cho tôi.
Bây giờ, nếu tôi chỉ in lỗi này, hãy xem nó trông như thế nào.
Nếu tôi bấm Chạy.
Bạn thấy đấy, đây là phần không khí mà chúng ta nhận được.
Vì vậy, nó rất, rất hữu ích nếu bạn muốn đưa ra những lỗi có ý nghĩa cho người dùng của mình.
Một điều thú vị khác mà bạn có thể làm là một cái gì đó giống như thế này, nơi bạn kết hợp các lỗi này lại với nhau.
Vì vậy, giả sử chúng ta cũng có lỗi chia bằng 0.
Và ở đây chúng tôi sẽ chỉ nói rất tiếc.
Ví dụ, nếu chúng ta chia num một cho num hai, hãy chạy điều này trước.
Tôi rất tiếc, nếu tôi chia một số cho 0 và tôi chạy nó.
Tôi cũng nhận được vòng lặp để tôi có thể xử lý nhiều lỗi theo cùng một cách.
Tôi cũng có thể nói là không khí ở đây và chỉ thực sự in ra không khí và nếu tôi chạy điều này.
Tôi sẽ nhận được phép chia cho 0 hoặc nếu tôi thực hiện một chuỗi.
Và chạy cái này.
Tôi nhận được loại lỗi khác.
Vì vậy, điều này một lần nữa thực sự hữu ích để kết hợp các lỗi khác nhau nếu bạn muốn xử lý chúng theo cùng một cách.
Nhưng nếu chúng ta thực sự muốn nêu ra lỗi của chính mình thì sao?
Đó là, chúng tôi muốn loại bỏ các lỗi của riêng chúng tôi có thể bên trong khối chấp nhận này.
Tôi thực sự muốn lỗi hiển thị cho một số loại lỗi nhất định.
Làm thế nào chúng tôi có thể làm điều đó?
Hãy cùng tìm hiểu trong video tiếp theo.