Lỗi và ngoại lệ trong Python
Cải thiện bài viết
Lưu bài viết
Thích bài viết
- Độ khó. Dễ dàng
- Cập nhật lần cuối. 22 tháng 10 năm 2021
Cải thiện bài viết
Lưu bài viết
Lỗi là sự cố trong chương trình do đó chương trình sẽ dừng thực thi. Mặt khác, các ngoại lệ được đưa ra khi một số sự kiện nội bộ xảy ra làm thay đổi quy trình bình thường của chương trình.
Hai loại lỗi xảy ra trong python.
- Lỗi cú pháp
- Lỗi logic [Ngoại lệ]
Lỗi cú pháp
Khi không tuân theo đúng cú pháp của ngôn ngữ thì sẽ xảy ra lỗi cú pháp
Thí dụ
Python3
# initialize the amount variable
amount
=
10000
# check that You are eligible to
# purchase Dsa Self Paced or not
if
please add money in your account0_______0_______1
please add money in your account2
please add money in your account3
please add money in your account4_______0_______5
please add money in your account6
please add money in your account2
please add money in your account3
đầu ra
Nó trả về một thông báo lỗi cú pháp vì sau câu lệnh if có dấu hai chấm. mất tích. Chúng ta có thể khắc phục điều này bằng cách viết đúng cú pháp
lỗi logic [Ngoại lệ]
Khi trong thời gian chạy, một lỗi xảy ra sau khi vượt qua kiểm tra cú pháp được gọi là ngoại lệ hoặc kiểu logic. Ví dụ: khi chúng tôi chia bất kỳ số nào cho 0 thì ngoại lệ ZeroDivisionError sẽ xuất hiện hoặc khi chúng tôi nhập một mô-đun không tồn tại thì ImportError sẽ xuất hiện
ví dụ 1.
Python3
# initialize the amount variable
# initialize the amount variable
0_______43_______ 10000
# initialize the amount variable
4
# initialize the amount variable
5=
# initialize the amount variable
0# initialize the amount variable
8 # initialize the amount variable
9
please add money in your account4
amount
1đầu ra
Trong ví dụ trên ZeroDivisionError khi chúng ta đang cố chia một số cho 0
ví dụ 2. Khi thụt đầu dòng không chính xác.
Python3
if
amount
3_______42_______4amount
5
please add money in your account4_______0_______5_______42_______8
please add money in your account2
đầu ra
Một số ngoại lệ tích hợp phổ biến khác với các ngoại lệ được đề cập ở trên là
ExceptionDescriptionIndexErrorKhi chỉ mục sai của danh sách được truy xuất. AssertionErrorXảy ra khi câu lệnh khẳng định failAttributeErrorXảy ra khi gán thuộc tính không thành công. ImportErrorNó xảy ra khi không tìm thấy mô-đun đã nhập. KeyErrorIt xảy ra khi không tìm thấy khóa của từ điển. NameErrorIt xảy ra khi biến không được xác định. MemoryErrorNó xảy ra khi một chương trình hết bộ nhớ. TypeErrorNó xảy ra khi một chức năng và hoạt động được áp dụng trong một loại không chính xác
Ghi chú. Để biết thêm thông tin, hãy tham khảo Ngoại lệ tích hợp trong Python
Xử lý lỗi
Khi xảy ra lỗi và ngoại lệ, chúng tôi sẽ xử lý lỗi đó với sự trợ giúp của phương thức Xử lý
- Xử lý ngoại lệ với Thử/Ngoại trừ/Cuối cùng
Chúng ta có thể xử lý lỗi bằng phương thức Try/Except/Finally. chúng tôi viết mã không an toàn trong lần thử, quay lại mã ngoại trừ và mã cuối cùng trong khối cuối cùng
Thí dụ
Python3
=
0
=
1=
2
=
3
please add money in your account4_______0_______5
=
6please add money in your account2
=
8
=
310000
0
=
3
please add money in your account4
please add money in your account5
10000
4 # initialize the amount variable
8 # initialize the amount variable
9please add money in your account2
10000
9
0=
2
=
3
please add money in your account4_______0_______5
5please add money in your account2
8
9=
2
=
3
please add money in your account4_______0_______5
# check that You are eligible to
4please add money in your account2
- đầu ra.
code start an error occurs GeeksForGeeks
- Tăng ngoại lệ cho một điều kiện được xác định trước
Khi chúng tôi muốn viết mã để giới hạn một số điều kiện nhất định thì chúng tôi có thể đưa ra một ngoại lệ.
Thí dụ
Python3
# check that You are eligible to
6
=
1=
2
please add money in your account3
amount
=
# purchase Dsa Self Paced or not
2please add money in your account3
if
# purchase Dsa Self Paced or not
5please add money in your account1
=
2=
8
# purchase Dsa Self Paced or not
9_______48_______0
# purchase Dsa Self Paced or not
9_______48_______2 if
3if
4
please add money in your account2
please add money in your account3
if
7=
2# purchase Dsa Self Paced or not
9_______0_______4_______0_______5
please add money in your account02
please add money in your account2
please add money in your account04
please add money in your account05
0
please add money in your account07
# purchase Dsa Self Paced or not
9_______0_______4
please add money in your account10
- đầu ra.
please add money in your account
Ghi chú cá nhân của tôi arrow_drop_up
Tiết kiệm