Python Nâng cao ngoại lệ – nếu nuôi con trăn ngoại lệ

Trong hướng dẫn này, bạn sẽ học cách nâng cao các ngoại lệ bằng cách sử dụng câu lệnh tăng trong Python.

Bạn đang xem : if raise python ngoại lệ

Tóm tắt : trong này hướng dẫn, bạn sẽ học cách nâng cao các ngoại lệ bằng cách sử dụng câu lệnh Python raise .

Giới thiệu về câu lệnh raise trong Python

Để tăng một ngoại lệ , bạn sử dụng câu lệnh raise :

 

< p class = "hljs-keyword"> raise

ExceptionType ()

Mã ngôn ngữ:

Python

(

python

)

ExceptionType () phải là lớp con của lớp BaseException . Thông thường, nó là một lớp con của lớp Exception . Lưu ý rằng ExceptionType không cần phải được kế thừa trực tiếp từ lớp Exception . Nó có thể kế thừa gián tiếp từ một lớp là lớp con của lớp Ngoại lệ.

Lớp BaseException có phương thức __init__ chấp nhận một đối số * args . Điều đó có nghĩa là bạn có thể chuyển bất kỳ số lượng đối số nào cho đối tượng ngoại lệ khi tăng một ngoại lệ.

Ví dụ sau sử dụng câu lệnh raise để tăng ValueError ngoại lệ. Nó chuyển ba đối số tới phương thức ValueError __init__ :

 

thử

:

raise

ValueError (

'Ngoại lệ lỗi giá trị'

,

'x '

,

' y '

)

ngoại trừ

ValueError

as

ví dụ: print (ex.args)

Ngôn ngữ mã:

Python

(

python

)

Kết quả:

 

('Ngoại lệ lỗi giá trị', 'x', 'y')

Ngôn ngữ mã:

plaintext

(

plaintext

)

Điều chỉnh lại ngoại lệ hiện tại

Đôi khi , bạn muốn ghi lại một ngoại lệ và nâng lại cùng một ngoại lệ. Trong trường hợp này, bạn có thể sử dụng câu lệnh raise mà không cần chỉ định đối tượng ngoại lệ.

Ví dụ: phần sau xác định hàm chia () trả về phép chia hai số:

 

def

chia

(a, b)

:

thử

:

trả về

a / b

ngoại trừ

ZeroDivisionError

as

ví dụ: print (

'Ngoại lệ ghi nhật ký:'

, str (ex))

nâng cao

Ngôn ngữ mã:

Python

(

python

)

Nếu bạn chuyển 0 cho đối số thứ hai của hàm chia () , thì ngoại lệ ZeroDivisionError sẽ xảy ra. Tuy nhiên, thay vì xử lý ngoại lệ, bạn có thể ghi lại ngoại lệ và nâng nó lên.

Lưu ý rằng bạn không cần chỉ định đối tượng ngoại lệ trong câu lệnh raise . Trong trường hợp này, Python biết rằng câu lệnh raise sẽ nêu ra ngoại lệ hiện tại đã bị mệnh đề exception bắt.

Đoạn mã sau gây ra ZeroDivisionError ngoại lệ:

 

split (

1

,

0

)

Ngôn ngữ mã:

< p class = "shcb-language__name"> Python

(

python

)

Và bạn sẽ thấy cả thông báo ghi nhật ký và ngoại lệ trong đầu ra:

 

Ngoại lệ ghi nhật ký: chia cho 0 Traceback (cuộc gọi gần đây nhất cuối cùng): Tệp "c: /pythontutorial/app.py", dòng 9, trong & lt; mô-đun & gt; phép chia (1, 0) Tệp "C: /pythontutorial/app.py", dòng 3, phân chia trả lại a / b ZeroDivisionError: chia cho không

Ngôn ngữ mã:

plaintext

(

plaintext

)

Đưa ra một ngoại lệ khác trong khi xử lý một ngoại lệ

Khi xử lý một ngoại lệ, bạn có thể muốn đưa ra một ngoại lệ khác. Ví dụ:

 

def

phép chia

(a, b)

:

thử

:

trả về

a / b

ngoại trừ

ZeroDivisionError

as

ví dụ:

raise

ValueError (

'b không được bằng 0'

)

Ngôn ngữ mã:

Python

(

python

)

Trong hàm chia () , chúng ta tăng một ValueError ngoại lệ nếu ZeroDivisionError xảy ra.

Nếu bạn chạy mã sau, bạn sẽ nhận được chi tiết về dấu vết ngăn xếp:

 

chia (

1

,

0

)

Ngôn ngữ mã:

Python

(

python

)

Đầu ra :

 

Traceback (cuộc gọi gần đây nhất l ast): Tệp "C: /pythontutorial/app.py", dòng 3, phân chia trả lại a / b ZeroDivisionError: chia cho 0 Trong quá trình xử lý ngoại lệ trên, một ngoại lệ khác đã xảy ra: Traceback (cuộc gọi gần đây nhất cuối cùng): Tệp "C: /pythontutorial/app.py", dòng 8, trong & lt; mô-đun & gt; phép chia (1, 0) Tệp "C: /pythontutorial/app.py", dòng 5, phân chia tăng ValueError ('b không được bằng 0') ValueError: b không được bằng 0

Ngôn ngữ mã:

plaintext

(

plaintext

)

Đầu tiên, ngoại lệ ZeroDivisionError xảy ra:

 

Traceback (lần gọi gần đây nhất): Tệp "C: /pythontutorial/app.py", dòng 3, phân chia trả lại a / b ZeroDivisionError: chia cho không

Ngôn ngữ mã:

plaintext

(

plaintext

)

Thứ hai, trong xử lý ngoại lệ ZeroDivisionError , ngoại lệ ValueError xảy ra:

 

Traceback (lần gọi gần đây nhất): Tệp "C: /pythontutorial/app.py", dòng 8, trong & lt; mô-đun & gt; phép chia (1, 0) Tệp "C: /pythontutorial/app.py", dòng 5, phân chia tăng ValueError ('b không được bằng 0') ValueError: b không được bằng 0

Ngôn ngữ mã:

plaintext

(

plaintext

)

Tóm tắt < / h2>

  • Sử dụng câu lệnh Python raise để đưa ra một ngoại lệ.
  • Khi xử lý ngoại lệ, bạn có thể nêu ra cùng một ngoại lệ hoặc một ngoại lệ khác.

Bạn có thấy hướng dẫn này hữu ích không?

< / p>


Xem thêm những thông tin liên quan đến chủ đề nếu nuôi con trăn ngoại lệ

Khui hộp trăn đất baby - Chuẩn bị gì trước khi nuôi trăn | WILDVN TV

  • Tác giả: Wildvn TV
  • Ngày đăng: 2020-06-01
  • Đánh giá: 4 ⭐ ( 3787 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: -----------
    HÃY nhấn SUBSCRIBE/ĐĂNG KÝ ngay để theo dõi những video mới nhất từ Wildvn TV nhé! ►Youtube: https://goo.gl/6Hpp2M

    Xem thêm các video khác của mình:
    ► Video về trăn và rắn: https://goo.gl/5K9rSZ
    ► Video về các loài bò sát khác: https://goo.gl/oye5Kc
    ► Tổng hợp video vlog của mình: https://goo.gl/jqLVCj
    -----------
    👉 YOUTUBE CHANNEL WILDVN TV: https://goo.gl/6Hpp2M
    👉 FACEBOOK WILDVN TV: https://www.facebook.com/wildvntv
    👉 FANPAGE: https://www.facebook.com/wildvntv1808
    👉 LIÊN HỆ QUẢNG CÁO: andystarz94@gmail.com
    -----------
    © Bản quyền thuộc về Wildvn TV
    © Copyright by Wildvn TV Channel ☞ Do not Reup
    WildvnTV Wildvn

Farmvina Nông Nghiệp - Thucanh.vn - Website chuyên thông tin dành cho thú cưng, vật nuôi

  • Tác giả: thucanh.vn
  • Đánh giá: 3 ⭐ ( 6222 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Con trăn có những tập tính nào người nuôi cần nắm?

  • Tác giả: nongnghiep.farmvina.com
  • Đánh giá: 3 ⭐ ( 8445 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Khi nuôi con trăn, dù chỉ nuôi với số lượng ít vài ba con để giải trí, hoặc nuôi với số lượng nhiều với mục đích kinh doanh, ta vẫn phải cố

Giới thiệu kỹ thuật nuôi trăn

  • Tác giả: chongthamvietnam.vn
  • Đánh giá: 5 ⭐ ( 7675 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Contents

Con trăn có những tập tính nào người nuôi cần nắm?

  • Tác giả: sotaynongnghiep.com
  • Đánh giá: 5 ⭐ ( 5583 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Con trăn có nhiều tập tính Khi nuôi con trăn, dù chỉ nuôi với số lượng ít vài ba con để giải trí, hoặc nuôi với số lượng nhiều với mục đích kinh doanh, ta - Xem bài viết Con trăn có những tập tính nào người nuôi cần nắm? mới nhất.

Tạp chí Chăn nuôi Việt Nam

  • Tác giả: nhachannuoi.vn
  • Đánh giá: 3 ⭐ ( 1227 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Kỹ thuật nuôi trăn

Nuôi trăn cảnh, thú vui tiềm ẩn nhiều rủi ro chết người

  • Tác giả: dantri.com.vn
  • Đánh giá: 5 ⭐ ( 2598 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: (Dân trí) - Nhiều người Việt thản nhiên cho rằng trăn là loài vật hiền lành, không tấn công người, nên được nuôi thả một cách rất tự nhiên, thậm chí cho

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Tạo bố cục đáp ứng với CSS Grid - cách tạo lưới đáp ứng trong css