Câu trả lời chung
Tiêu chuẩn "NOP" trong Python là tuyên bố pass
:
try:
do_something[]
except Exception:
pass
Sử dụng
try:
do_something[]
except Exception:
sys.exc_clear[]
0 thay vì trần try:
do_something[]
except Exception:
sys.exc_clear[]
1 Tránh bắt các ngoại lệ như try:
do_something[]
except Exception:
sys.exc_clear[]
2, try:
do_something[]
except Exception:
sys.exc_clear[]
3, v.v.Python 2
Do ngoại lệ bị ném cuối cùng được ghi nhớ trong Python 2, một số đối tượng liên quan đến tuyên bố ném ngoại lệ đang được giữ trực tiếp vô thời hạn [thực ra, cho đến khi ngoại lệ tiếp theo]. Trong trường hợp điều này rất quan trọng đối với bạn và [thông thường] bạn không cần nhớ ngoại lệ cuối cùng, bạn có thể muốn làm như sau thay vì pass
:
try:
do_something[]
except Exception:
sys.exc_clear[]
Điều này xóa ngoại lệ cuối cùng.
Python 3
Trong Python 3, biến giữ thể hiện ngoại lệ sẽ bị xóa khi thoát khỏi khối
try:
do_something[]
except Exception:
sys.exc_clear[]
1. Ngay cả khi biến giữ một giá trị trước đây, sau khi nhập và thoát khối try:
do_something[]
except Exception:
sys.exc_clear[]
1, nó lại trở lại không xác định.undefined again. Trong Python, chúng tôi xử lý các ngoại lệ bằng cách sử dụng khối numbers = [12, 1, 0, 45, 56]
for number in numbers:
print['result is {}'.format[1/number]]
1. Hướng dẫn này sẽ thảo luận về một số phương pháp để bỏ qua một ngoại lệ và tiến hành mã trong Python.
Tuyên bố pass
có thể được coi là một trình giữ chỗ trong lập trình Python. Nó trả về một câu lệnh
numbers = [12, 1, 0, 45, 56] for number in numbers: print['result is {}'.format[1/number]]5 và do đó, không tạo ra giá trị. Tuy nhiên, trình thông dịch Python không bỏ qua câu lệnh PASS và chúng tôi ngăn chặn lỗi cho mã trống trong đó câu lệnh được sử dụng.
Khi câu lệnh pass
được sử dụng trong các câu lệnh
numbers = [12, 1, 0, 45, 56] for number in numbers: print['result is {}'.format[1/number]]1, nó chỉ cần chuyển bất kỳ lỗi nào và không làm thay đổi luồng của chương trình Python.
Chúng ta có thể đạt được điều này bằng hai bước sau
- Đặt logic của việc lấy qua lại số trong & nbsp; hãy thử khối
- Thực hiện một khối ngoại lệ được thực thi bất cứ nơi nào số là 0. Tiếp tục với phần còn lại của logic & nbsp;
Không có khối thử nghiệm thử
Trước tiên chúng ta hãy thực hiện logic bằng cách sử dụng một vòng lặp đơn giản. Như bạn có thể thấy ở đầu ra bên dưới, chương trình đã bị sập khi số là 0
numbers = [12, 1, 0, 45, 56] for number in numbers: print['result is {}'.format[1/number]]
Đầu ra
result is 0.08333333333333333 result is 1.0 --------------------------------------------------------------------------- ZeroDivisionError Traceback [most recent call last] in [] 1 for number in numbers: ----> 2 print['result is {}'.format[1/number]] ZeroDivisionError: division by zero
Với một khối Except thử
Bây giờ chúng ta hãy xem làm thế nào chúng ta có thể bỏ qua một ngoại lệ một cách an toàn
numbers = [12,1,0,45,56] for number in numbers: try: print['result is {}'.format[1/number]] except Exception as e: print['Ignoring Exception', e]
Đầu ra
result is 0.08333333333333333 result is 1.0 Ignoring Exception division by zero result is 0.022222222222222223 result is 0.017857142857142856
Với một khối Except thử
Bây giờ chúng ta hãy xem làm thế nào chúng ta có thể bỏ qua một ngoại lệ một cách an toàn
- Sử dụng câu lệnh
pass
trong khối
1 trong Pythontry: do_something[] except Exception: sys.exc_clear[]
- Sử dụng câu lệnh
9 trong khốitry: do_something[] except Exception: sys.exc_clear[]
1 trong Pythontry: do_something[] except Exception: sys.exc_clear[]
Một ngoại lệ là một sự kiện, khi được nâng lên, làm thay đổi luồng của chương trình.
Các ngoại lệ là kết quả của chương trình là chính xác về mặt cú pháp nhưng vẫn gây ra lỗi khi thực thi mã. Lỗi này không chia cắt thực thi chương trình mà thay vào đó là thay đổi luồng mặc định của chương trình.
Trong Python, chúng tôi xử lý các ngoại lệ bằng cách sử dụng khối
numbers = [12, 1, 0, 45, 56] for number in numbers: print['result is {}'.format[1/number]]1. Hướng dẫn này sẽ thảo luận về một số phương pháp để bỏ qua một ngoại lệ và tiến hành mã trong Python.
Sử dụng câu lệnh pass
trong khối try:
do_something[]
except Exception:
sys.exc_clear[]
1 trong Python
try:
do_something[]
except Exception:
sys.exc_clear[]
Sử dụng câu lệnh
try:
do_something[]
except Exception:
sys.exc_clear[]
9 trong khối try:
do_something[]
except Exception:
sys.exc_clear[]
1 trong PythonMột ngoại lệ là một sự kiện, khi được nâng lên, làm thay đổi luồng của chương trình.
Các ngoại lệ là kết quả của chương trình là chính xác về mặt cú pháp nhưng vẫn gây ra lỗi khi thực thi mã. Lỗi này không chia cắt thực thi chương trình mà thay vào đó là thay đổi luồng mặc định của chương trình.
try:
print[hey]
except Exception:
pass
print["ignored the exception"]
Trong Python, chúng tôi xử lý các ngoại lệ bằng cách sử dụng khối
numbers = [12, 1, 0, 45, 56] for number in numbers: print['result is {}'.format[1/number]]1. Hướng dẫn này sẽ thảo luận về một số phương pháp để bỏ qua một ngoại lệ và tiến hành mã trong Python.
ignored the exception
Tuyên bố pass
có thể được coi là một trình giữ chỗ trong lập trình Python. Nó trả về một câu lệnh
numbers = [12, 1, 0, 45, 56] for number in numbers: print['result is {}'.format[1/number]]5 và do đó, không tạo ra giá trị. Tuy nhiên, trình thông dịch Python không bỏ qua câu lệnh PASS và chúng tôi ngăn chặn lỗi cho mã trống trong đó câu lệnh được sử dụng.
Sử dụng câu lệnh try:
do_something[]
except Exception:
sys.exc_clear[]
9 trong khối try:
do_something[]
except Exception:
sys.exc_clear[]
1 trong Python
try:
do_something[]
except Exception:
sys.exc_clear[]
try:
do_something[]
except Exception:
sys.exc_clear[]
Trong Python 2, ngoại lệ ném cuối cùng được người phiên dịch nhớ, trong khi nó không xảy ra trong các phiên bản mới hơn của Python.Do đó, câu lệnh
try:
do_something[]
except Exception:
sys.exc_clear[]
9 là không cần thiết trong các phiên bản được phát hành sau Python 3. Tuyên bố try:
do_something[]
except Exception:
sys.exc_clear[]
9 có thể được sử dụng để xóa ngoại lệ cuối cùng của trình thông dịch Python.Mã sau sử dụng câu lệnh
try:
do_something[]
except Exception:
sys.exc_clear[]
9 trong khối try:
do_something[]
except Exception:
sys.exc_clear[]
1 để bỏ qua một ngoại lệ và tiến hành mã trong Python.try:
print[hey]
except Exception:
sys.exc_clear[]
print["ignored the exception"]
Mặc dù hai cách này quản lý để làm cho chương trình chạy mà không có bất kỳ lỗi nào, nhưng không nên bỏ qua tất cả các lỗi trong một chương trình.Tuy nhiên, chỉ bỏ qua một lỗi cụ thể hoặc một số lỗi là một thực tiễn mà hầu hết các lập trình viên làm cho một chương trình lành mạnh.
Giới hạn việc sử dụng câu lệnh pass
và tuyên bố
try:
do_something[]
except Exception:
sys.exc_clear[]
9 trong một chương trình cũng cải thiện khả năng đọc và xác định các lỗi của chương trình.