Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách properly ignore Exceptions trong Python?

Điều này có thể thực hiện bằng code sau:

try:
    x, y = 7, 0
    z = x / y
except:
    pass

HOẶC

try:
    x, y = 7, 0
    z = x / y
except Exception:
    pass

Những code này bypass exception trong try statement và ignore except clause và không raise bất kỳ exception nào.

Khác biệt giữa hai code trên là cái đầu tiên cũng sẽ catch KeyboardInterrupt, SystemExit v.v., những thứ derived trực tiếp từ exceptions.BaseException, không phải exceptions.Exception.

Biết rằng last thrown exception được nhớ trong Python, một số objects involved trong exception-throwing statement được giữ live cho đến next exception. Chúng ta có thể muốn làm sau thay vì chỉ pass:

try:
    x, y = 7, 0
    z = x / y
except Exception:
    sys.exc_clear()

Điều này clear last thrown exception.