Cách vượt qua ngoại lệ trong Python

Ở đây chúng tôi đang chuyển một biến cho ngoại lệ đã cho. Chúng tôi đang xác định một ngoại lệ tùy chỉnh ExampleException là một lớp con của lớp cơ sở Ngoại lệ và cũng xác định phương thức __init__. Chúng tôi sử dụng khối thử ngoại trừ để tăng ngoại lệ và chuyển biến cho ngoại lệ như sau

Ví dụ

class ExampleException(Exception):
def __init__(self, foo):
self.foo = foo
try:
raise ExampleException("Bar!")
except ExampleException as e:
print e.foo

đầu ra

"C:/Users/TutorialsPoint1/~bar.py"
Bar!

Cách vượt qua ngoại lệ trong Python


Cách vượt qua ngoại lệ trong Python

Một ngoại lệ là một sự cố bất thường hoặc bất ngờ xảy ra trong một chương trình làm gián đoạn luồng bình thường của chương trình

Có khá nhiều ngoại lệ tích hợp trong Python thường được nêu ra tùy thuộc vào loại lỗi gặp phải trong chương trình.  

 

 

Tại sao điều quan trọng là phải xử lý các ngoại lệ?

Các ngoại lệ chưa được xử lý trong một chương trình cuối cùng dẫn đến các chương trình gặp sự cố với thông báo lỗi được hiển thị trong thiết bị đầu cuối

Do đó, khi phát triển các ứng dụng mà cuối cùng sẽ được sử dụng bởi nhiều người dùng, chúng tôi cần đảm bảo rằng tất cả các ngoại lệ đều được xử lý.  

 

Cách vượt qua ngoại lệ trong Python

Làm thế nào để xử lý ngoại lệ?

Trong bài viết này, chúng ta sẽ khám phá các trường hợp ngoại lệ xảy ra như thế nào và cách chúng ta có thể xử lý chúng

Trong ví dụ bên dưới, chúng ta có một hàm đơn giản nhận ba số làm tham số và cộng chúng lại với nhau rồi trả về giá trị

 

Sử dụng hàm add()

Bây giờ, giả sử chúng ta cố tình chuyển một chuỗi làm một trong các đối số khi gọi hàm add()

Rõ ràng, điều này sẽ dẫn đến lỗi vì toán tử cộng chỉ có thể được sử dụng để tìm tổng của các loại số;

 

Sử dụng các khối thử ngoại trừ

Trong Python, các trường hợp ngoại lệ được xử lý tốt nhất bằng cách sử dụng mệnh đề try và except. Chúng tôi sẽ đặt một phần của chương trình có khả năng dẫn đến lỗi dưới mệnh đề try. Mặt khác, mệnh đề except sẽ xử lý ngoại lệ nếu nó xảy ra.  

 

Cách vượt qua ngoại lệ trong Python

 

Do đó, trong khối ngoại lệ, chúng ta có thể viết bất kỳ mã nào mà chúng ta muốn được thực thi khi xảy ra lỗi trong chương trình

Cách ném ngoại lệ trong Python – Sử dụng câu lệnh “pass”

Trong mã bên dưới, chúng tôi đã sử dụng câu lệnh pass làm trình giữ chỗ, do đó sẽ không có gì được thực thi nếu một ngoại lệ xảy ra trong chương trình của chúng tôi

 

 

Trong chương trình Python ở trên, không có ngoại lệ nào xảy ra do đó mã trong khối thử được thực thi thành công. Ngoài ra câu lệnh in cuối cùng cũng được thực hiện kết quả là ta có hai số 6 được in ra

Tuyên bố vượt qua trong thực tế

Tuy nhiên, nếu xảy ra lỗi, mã trong mệnh đề try sẽ không được thực thi, thay vào đó, mệnh đề ngoại trừ được gọi

Vì chúng tôi chỉ có một câu lệnh vượt qua bên dưới khối ngoại trừ nên không có gì thực sự xảy ra. Trong trường hợp này, chỉ có câu lệnh in cuối cùng sẽ được thực thi, do đó chúng tôi chỉ nhận được một câu lệnh in sáu

 

Cách ném ngoại lệ trong Python – Các loại ngoại lệ cụ thể

Mặc dù phương thức này hoạt động nhưng nó không phải là cách lý tưởng để xử lý các ngoại lệ trong Python. Nó được coi là một thực hành tốt khi chúng tôi chỉ định ngoại lệ chính xác mà mệnh đề ngoại trừ sẽ xử lý

Điều này cho phép chúng tôi nắm bắt các ngoại lệ chính xác và cũng nhận được thông báo lỗi chính xác. Xin lưu ý rằng chúng tôi cũng có thể đặt bí danh cho các ngoại lệ cho phép chúng tôi truy cập các thuộc tính của chúng bằng các tên phổ biến như chúng tôi đã thực hiện bên dưới

 

 

Trong ví dụ trên, chúng tôi đã xử lý thành công các ngoại lệ TypeError trả về một thông báo chính xác. Chúng tôi cũng có thể lưu ý rằng câu lệnh in cuối cùng vẫn được thực thi

 

Cách vượt qua ngoại lệ trong Python

Cách ném ngoại lệ trong Python – Sử dụng từ khóa “raise”

Bây giờ nếu chúng ta muốn ngăn chương trình thực hiện thêm bất kỳ câu lệnh nào xuất hiện sau khối try and except này thì chúng ta có thể sử dụng raise .

Từ khóa nâng cao cho phép chúng tôi ném ngoại lệ theo cách thủ công, in thông báo lỗi chi tiết và cũng dừng mọi hoạt động thực thi chương trình tiếp theo

 

 

Khi viết các ngoại lệ mã sẵn sàng sản xuất thường sẽ được ghi lại và lưu trữ ở đâu đó mà người ta có thể dễ dàng truy cập và truy xuất chúng

Câu lệnh raise thực sự hữu ích khi chúng ta không chắc chắn về loại Exception mà chúng ta đang mong đợi trong mã của mình. Trong trường hợp như vậy, từ khóa nâng cao trả về một thông báo lỗi chi tiết mà chúng ta có thể tham khảo

 



Tóm lược

Đây là cách ném một ngoại lệ trong Python trong thực tế. Nếu bạn muốn xem thêm các hướng dẫn lập trình, hãy xem kênh YouTube của chúng tôi, nơi chúng tôi có rất nhiều video hướng dẫn Python bằng tiếng Anh

Trong chuỗi Hướng dẫn lập trình Python của chúng tôi, bạn sẽ tìm thấy các tài liệu hữu ích giúp bạn cải thiện kỹ năng lập trình của mình và đẩy nhanh quá trình học tập

hướng dẫn lập trình

  • Cách sử dụng vòng lặp Python for
  • Cách sử dụng Bộ Python
  • Cách sử dụng Từ điển Python
  • Cách sử dụng các lớp Python
  • Cách sử dụng phạm vi Python
  • Cách sử dụng câu lệnh if-else trong Python
  • Cách sử dụng Python RegEx
  • Cách sử dụng Danh sách Python
  • Cách sử dụng Python Liệt kê
  • Cách sử dụng Hàm Python
  • Cách sử dụng Python Split
  • Cách sử dụng Python Try-Exception
  • Cách sử dụng Python Tuples
  • Cách sử dụng Mảng Python
  • Cách sử dụng Sắp xếp Python
  • Cách sử dụng Python DateTime
  • Làm cách nào để tải xuống Python?
  • Cách sử dụng chức năng Ghi tệp Python
  • Cách sử dụng Python Lambda
  • Cách sử dụng Python ListAppend
  • Cách sử dụng Tính năng hiểu danh sách Python
  • Cách sử dụng Bản đồ Python
  • Cách sử dụng Toán tử Python
  • Cách sử dụng Python Pandas
  • Cách sử dụng Yêu cầu Python
  • Cách sử dụng Chuỗi Python
  • Cách sử dụng Đếm Python
  • Cách sử dụng Nhận xét Python
  • Cách sử dụng phương pháp Trình đọc tệp Python
  • Cách sử dụng Python IDE-s
  • Cách sử dụng ghi nhật ký Python
  • Cách sử dụng In Python
  • Cách sử dụng Python Zip
  • Cách sử dụng Python nối thêm
  • Cách sử dụng Biến toàn cục Python
  • Cách sử dụng phương thức nối Python
  • Cách sử dụng độ dài danh sách Python
  • Cách sử dụng các tệp JSON của Python
  • Cách sử dụng Python Modulo
  • Cách sử dụng các phương thức mở tệp Python
  • Cách sử dụng vòng Python
  • Cách sử dụng giấc ngủ Python
  • Cách sử dụng Python thay thế
  • Cách sử dụng dải Python
  • Cách sử dụng mô-đun Thời gian Python
  • Cách sử dụng Python unittests
  • Làm cách nào để lưu dữ liệu vào tệp văn bản bằng Trình quản lý ngữ cảnh?
  • Cách sử dụng các mô-đun bên ngoài Python
  • Cách sử dụng Python tìm
  • Cách cài đặt trình quản lý gói Python pip
  • Cách xóa tệp trong Python
  • Phân tích tệp XML bằng Python
  • Cách tạo GUI bằng Python
  • Cách sử dụng Python trong Command Prompt
  • Cách chạy chương trình Python trong mã VS
  • Cách chạy một chương trình trong Python IDLE
  • Cách chạy chương trình trong Jupyter Notebook
  • Cách đọc tệp văn bản trong Python
  • Cách cộng số trong Python
  • Cách yêu cầu đầu vào của người dùng trong Python
  • Cách gỡ lỗi trong Python
  • Cách tạo một chủ đề trong Python
  • Cách kết thúc một chương trình trong Python
  • Cách nhập thư viện bằng Python
  • Cách sử dụng trình quản lý gói PIP
  • Cách sử dụng các lớp trong Python
  • Cách đảo ngược chuỗi trong Python
  • Cách chuyển đổi một chuỗi thành int trong Python
  • Cách in trên cùng một dòng trong Python
  • Cách xóa các mục khỏi danh sách
  • Cách thêm vào từ điển trong Python
  • Cách tạo một ngoại lệ trong Python
  • Cách ném ngoại lệ trong Python
  • Cách dừng chương trình trong Python
  • Cách sử dụng xác nhận Python
  • Cách sử dụng trình biên dịch Python

Bạn có muốn học cách viết mã trực tuyến không?

Làm cách nào để sử dụng ngoại lệ trong Python?

Thử và loại trừ Khối. Xử lý ngoại lệ. Khối try and except trong Python được sử dụng để bắt và xử lý các ngoại lệ . Python thực thi mã sau câu lệnh try như một phần “bình thường” của chương trình. Mã theo sau câu lệnh ngoại trừ là phản hồi của chương trình đối với bất kỳ ngoại lệ nào trong mệnh đề thử trước đó.

Chúng ta có thể sử dụng pass in except Python không?

Câu lệnh Python Pass có xử lý ngoại lệ . If you don't want to do anything for a specific type of Exception after catching it you can use pass statement.

Python xử lý các ngoại lệ và lỗi như thế nào?

Không thể xử lý lỗi, trong khi các ngoại lệ Python có thể được xử lý trong thời gian chạy. Lỗi có thể là lỗi cú pháp (phân tích cú pháp), trong khi có thể có nhiều loại ngoại lệ có thể xảy ra trong quá trình thực thi và không phải là không thể hoạt động vô điều kiện. .
Lỗi cú pháp
Lỗi bộ nhớ
Lỗi đệ quy
ngoại lệ