Bạn có thể có 2 ngoại trừ trong python không?
Trong Python, khi một ngoại lệ được đưa ra, luồng thực thi bình thường bị gián đoạn và chương trình sẽ nhảy tới trình xử lý ngoại lệ kèm theo gần nhất. Cơ chế này được gọi là "bắt ngoại lệ" Show
Khi một ngoại lệ được đưa ra, trình thông dịch sẽ tìm kiếm một trình xử lý ngoại lệ bằng cách tìm kiếm ngăn xếp cuộc gọi. Nếu trình thông dịch tìm thấy một trình xử lý ngoại lệ có thể xử lý ngoại lệ, thì trình xử lý đó sẽ được thực thi. Nếu trình thông dịch không tìm thấy trình xử lý ngoại lệ, nó sẽ dừng thực thi chương trình và in thông báo lỗi Khối thử được sử dụng để đính kèm mã có thể gây ra ngoại lệ. Khối 5 được sử dụng để xác định trình xử lý ngoại lệ. Nếu một ngoại lệ được đưa ra trong khối 6, trình thông dịch sẽ kiểm tra khối 5 để xem nó có thể xử lý ngoại lệ đó không. Nếu loại ngoại lệ khớp với ngoại lệ được chỉ định trong khối ngoại trừ, mã trong khối ngoại trừ được thực thi và quá trình thực thi tiếp tục sau khối ngoại trừCŨNG ĐỌC. 5 ví dụ đơn giản để học hàm enumerate() của python
Chúng ta có thể bắt nhiều ngoại lệ trong Python không?Bạn có thể nắm bắt các loại ngoại lệ khác nhau trong các khối 5 riêng biệt. Khối thử có thể có nhiều khối ngoại trừ, mỗi khối xử lý một loại ngoại lệ khác nhau. Trình thông dịch sẽ thực thi khối except đầu tiên có ngoại lệ khớp với ngoại lệ đã được nêu ra. Nếu không tìm thấy khối except phù hợp, trình thông dịch sẽ tiếp tục tìm kiếm trình xử lý ngoại lệ trong hàm gọi hoặc tập lệnh
Sử dụng các khối ngoại trừ khác nhauBạn có thể bắt nhiều ngoại lệ trong các khối ngoại trừ khác nhau trong Python. Đây là một ví dụ
Trong ví dụ này, nếu một ngoại lệ loại 9 được đưa ra bên trong khối 6, mã bên trong khối ngoại trừ đầu tiên sẽ được thực thi. Nếu một ngoại lệ loại 1 được đưa ra, mã bên trong khối ngoại trừ thứ hai sẽ được thực thi, v.v.Trong trường hợp này, trình thông dịch sẽ chỉ thực thi khối except đầu tiên có ngoại lệ khớp với ngoại lệ đã được nêu ra. Nếu trình thông dịch tìm thấy một trình xử lý ngoại lệ, quá trình thực thi sẽ tiếp tục sau khối ngoại trừ
Bắt tất cả các ngoại lệCũng có thể bắt tất cả các ngoại lệ có thể xảy ra bằng cách sử dụng Ngoại lệ thay vì các loại ngoại lệ cụ thể Quảng cáo
CŨNG ĐỌC. Giải thích về kẹo dẻo Python [Ví dụ thực tế] Bắt nhiều ngoại lệ bên trong một khối ngoại trừBạn có thể bắt nhiều ngoại lệ trong một khối except trong Python bằng cách sử dụng dấu ngoặc đơn để chỉ định loại ngoại lệ. Đây là một cú pháp ví dụ
Trong ví dụ này, nếu bất kỳ ngoại lệ nào 9, 1, 4 được đưa ra bên trong khối thử, mã bên trong khối ngoại trừ sẽ được thực thiBạn cũng có thể sử dụng từ khóa as để gán thể hiện ngoại lệ cho một biến
Ví dụ
Điều này sẽ bắt cả 5 và 6 và in thông báo lỗi
Các phương pháp hay nhất khi xử lý ngoại lệ trong Python là gì?Dưới đây là một số phương pháp hay nhất để xử lý ngoại lệ trong Python
CŨNG ĐỌC. Hướng dẫn đặt chênh lệch Python() [Ví dụ thực tế]
Ví dụ thực tế để bắt nhiều ngoại lệPhương pháp-1. Bắt nhiều ngoại lệ trong khối ngoại lệ riêng biệtVòng lặp for trong Python được sử dụng để lặp qua một đối tượng có thể lặp lại (như danh sách, bộ dữ liệu, bộ, v.v. ) và thực hiện hành động tương tự cho mỗi mục nhập. Chúng ta có thể sử dụng xử lý nhiều ngoại lệ có thể xảy ra trong khi lặp lại một đối tượng. Trong trường hợp như vậy, chúng ta có thể sử dụng khối try and catch bên trong vòng lặp for của Python để xử lý nhiều ngoại lệ. Sau đây là cú pháp đơn giản
Lưu ý rằng chúng tôi đã xử lý các ngoại lệ có thể xảy ra bên trong vòng lặp for Quảng cáo
Ví dụ 1. Bắt nhiều ngoại lệ bằng cách sử dụng vòng lặp forBây giờ chúng ta hãy lấy một ví dụ và xem cách chúng ta có thể sử dụng vòng lặp for của python để bắt nhiều ngoại lệ. Xem ví dụ bên dưới
đầu ra the division is: -10.0
the division is: 5.0
Error occurs while dividing
the division is: 2.5
Error occurs while dividing Lưu ý rằng chương trình trên đã đưa ra hai lỗi nhưng đã được xử lý thành công bằng cách sử dụng khối ngoại trừ CŨNG ĐỌC. Hàm Python floor() Ví dụ [Người mới bắt đầu]
Ví dụ-2. Bắt các loại Ngoại lệ khác nhauTrong python, có nhiều ngoại lệ tích hợp sẵn, ví dụ ZeroDivisionError, IndexOutOfRange, TypeError, v.v. ZeroDivisionError xảy ra khi một số được chia cho 0 và TypeError xảy ra khi các loại dữ liệu khác nhau được thêm vào hoặc thực hiện các thao tác không thể thực hiện được. Trong khi IndexOutOfRange như tên gợi ý tăng khi chỉ mục nằm ngoài phạm vi. Trong phần này, chúng tôi sẽ xử lý ba loại lỗi đã cho. Sau đây sẽ là cú pháp đơn giản để xử lý các loại ngoại lệ khác nhau ở trên
Tùy thuộc vào loại ngoại lệ xảy ra trong khối thử, khối ngoại trừ cụ thể đó sẽ được thực thi để xử lý ngoại lệ Bây giờ hãy xem cách chúng tôi xử lý các loại ngoại lệ khác nhau có thể xảy ra trong quá trình thực thi khối thử. Xem chương trình Python sau Quảng cáo
đầu ra 0Type error xảy ra do trong Python chúng ta không thể cộng trực tiếp kiểu dữ liệu string và integer với nhau. Vì vậy, vì lỗi loại đã được đưa ra bởi khối thử, đó là lý do tại sao chỉ có khối Loại trừ TypeError được thực thi CŨNG ĐỌC. Các đối số tùy chọn của Python trong hàm [Ví dụ thực tế]
Phương pháp-2. Bắt nhiều ngoại lệ trong một khối ngoại trừThay vì viết các loại ngoại lệ khác nhau trong các khối except khác nhau, chúng ta có thể viết chúng trong một dòng bằng cách sử dụng một tuple. Tuple không là gì, chỉ là một tập hợp các đối tượng Python được phân tách bằng dấu phẩy. Chúng tôi viết tất cả các loại ngoại lệ có thể xảy ra trong một bộ và sử dụng một khối ngoại trừ. Xem cú pháp sau đây của nhiều ngoại lệ trong một dòng 1Lưu ý rằng chúng tôi đã cô đọng tất cả các ngoại lệ chỉ trong một dòng bằng cách viết sau đó bên trong một kiểu chữ
Ví dụ 1. Python bắt nhiều ngoại lệ trong một dòngBây giờ hãy xem cách chúng tôi có thể xử lý nhiều ngoại lệ chỉ trong một dòng. Xem chương trình python bên dưới 2đầu ra 3Lưu ý rằng lỗi loại xảy ra và được xử lý trong khối ngoại trừ
Ví dụ-2. Xử lý nhiều ngoại lệ trong một khối ngoại trừHãy đi trước một bước và xử lý thêm một số ngoại lệ trong một khối except 4Trong ví dụ này, khối thử chứa 4 thao tác sẽ đưa ra các loại ngoại lệ khác nhau
CŨNG ĐỌC. Ví dụ về đầu vào của người dùng Python. Hàm đầu vào Python() Bản tóm tắtTrong Python, chúng tôi sử dụng các khối try và except để nắm bắt và xử lý bất kỳ loại ngoại lệ và lỗi nào có thể xảy ra trong quá trình thực thi chương trình của chúng tôi. Trong hướng dẫn này, chúng ta đã học về python bắt nhiều ngoại lệ bằng cách sử dụng các phương pháp khác nhau. Chúng tôi đã thảo luận năm cách khác nhau để xử lý nhiều ngoại lệ bằng cách lấy các ví dụ khác nhau. Chúng tôi đã đề cập đến cách chúng tôi có thể xử lý các ngoại lệ bằng cách sử dụng các khối ngoại lệ, các loại ngoại lệ khác nhau và cách chúng tôi có thể xử lý tất cả các loại ngoại lệ chỉ trong một dòng. Hơn nữa, chúng ta cũng đã thảo luận về cách chúng ta có thể xác định ngoại lệ của riêng mình và xử lý nó. Tóm lại, hướng dẫn này chứa tất cả các phương pháp cần thiết được sử dụng để xử lý nhiều ngoại lệ trong các tình huống khác nhau Tôi có thể có hai ngoại trừ trong Python không?Trong Python, các khối ngoại lệ thử có thể được sử dụng để bắt và phản hồi một hoặc nhiều ngoại lệ . Trong trường hợp một quy trình phát sinh nhiều ngoại lệ có thể xảy ra, tất cả chúng có thể được xử lý bằng một mệnh đề ngoại trừ duy nhất.
Bạn có thể có hai khối ngoại trừ?Có thể có nhiều khối ngoại trừ cho một khối thử . Hãy cho chúng tôi xem các ví dụ xử lý nhiều ngoại lệ của Python. Khi trình thông dịch gặp một ngoại lệ, nó sẽ kiểm tra các khối ngoại trừ được liên kết với khối thử đó. Các khối ngoại trừ này có thể khai báo loại ngoại lệ mà chúng xử lý.
Có thể thử bao nhiêu ngoại lệ1. Một khối try-ngoại trừ có thể có bao nhiêu câu lệnh ngoại trừ? . d Giải thích. Phải có ít nhất một câu lệnh except. 2.
Chúng tôi có thể xử lý nhiều ngoại lệ trong một khối bắt không?Xử lý nhiều loại ngoại lệ
. Tính năng này có thể giảm trùng lặp mã và giảm bớt sự cám dỗ để bắt một ngoại lệ quá rộng. a single catch block can handle more than one type of exception. This feature can reduce code duplication and lessen the temptation to catch an overly broad exception. |