Một xác nhận là một kiểm tra độ chính xác mà bạn có thể bật hoặc tắt khi bạn hoàn thành việc kiểm tra chương trình của mình
Cách dễ nhất để nghĩ về một khẳng định là so sánh nó với một câu lệnh nâng cao nếu [hoặc chính xác hơn, một câu lệnh nâng cao nếu không]. Một biểu thức được kiểm tra và nếu kết quả trả về là sai, một ngoại lệ sẽ được đưa ra
Các xác nhận được thực hiện bởi câu lệnh khẳng định, từ khóa mới nhất của Python, được giới thiệu trong phiên bản 1. 5
Các lập trình viên thường đặt các xác nhận khi bắt đầu một hàm để kiểm tra đầu vào hợp lệ và sau khi gọi hàm để kiểm tra đầu ra hợp lệ
Tuyên bố khẳng định
Khi gặp một câu lệnh khẳng định, Python sẽ đánh giá biểu thức đi kèm, điều này hy vọng là đúng. Nếu biểu thức là sai, Python sẽ đưa ra một ngoại lệ AssertionError
Cú pháp để khẳng định là -
assert Expression[, Arguments]
Nếu xác nhận không thành công, Python sử dụng ArgumentExpression làm đối số cho AssertionError. Các ngoại lệ AssertionError có thể bị bắt và xử lý giống như bất kỳ ngoại lệ nào khác bằng cách sử dụng câu lệnh try-ngoại trừ, nhưng nếu không được xử lý, chúng sẽ chấm dứt chương trình và tạo ra một truy nguyên
Ví dụ
Đây là một chức năng chuyển đổi nhiệt độ từ độ Kelvin sang độ F. Vì 0 độ Kelvin càng lạnh càng tốt, nên chức năng này sẽ ngừng hoạt động nếu nó thấy nhiệt độ âm -
Các xác nhận trong bất kỳ ngôn ngữ lập trình nào là các công cụ sửa lỗi giúp dòng mã trôi chảy. Các xác nhận chủ yếu là các giả định mà một lập trình viên biết hoặc luôn muốn là đúng và do đó đưa chúng vào mã để sự thất bại của chúng không cho phép mã thực thi thêm.
khẳng định bằng Python
Nói một cách đơn giản hơn, chúng ta có thể nói rằng khẳng định là biểu thức boolean kiểm tra xem câu lệnh là Đúng hay Sai. Nếu câu lệnh là đúng thì nó không làm gì và tiếp tục thực hiện, nhưng nếu câu lệnh là Sai thì nó dừng việc thực thi chương trình và đưa ra lỗi
Lưu đồ của Tuyên bố khẳng định Python
khẳng định bằng Python
khẳng định từ khóa trong Python
Trong python, từ khóa khẳng định giúp đạt được nhiệm vụ này. Câu lệnh này lấy đầu vào là một điều kiện boolean, khi trả về true thì không làm bất cứ điều gì và tiếp tục luồng thực thi thông thường, nhưng nếu nó được tính là false, thì nó sẽ đưa ra một AssertionError cùng với thông báo tùy chọn được cung cấp.
cú pháp. xác nhận điều kiện, error_message [tùy chọn]
Thông số.
điều kiện. Điều kiện boolean trả về true hoặc false.
error_message. Đối số tùy chọn sẽ được in trong bảng điều khiển trong trường hợp AssertionErrorTrả về.
Trả về AssertionError, trong trường hợp điều kiện đánh giá là sai cùng với thông báo lỗi khi được cung cấp.
ví dụ 1. Từ khóa xác nhận Python không có thông báo lỗi
Python3
AssertionError: Zero Division Error1
AssertionError: Zero Division Error2
AssertionError: Zero Division Error3
AssertionError: Zero Division Error4
AssertionError: Zero Division Error5
AssertionError: Zero Division Error6
AssertionError: Zero Division Error0
AssertionError: Zero Division Error5
AssertionError: Zero Division Error2
AssertionError: Zero Division Error3
AssertionError: Zero Division Error4
AssertionError: Zero Division Error5____16
AssertionError: Zero Division Error7
AssertionError: Zero Division Error8
AssertionError: Zero Division Error9
AssertionError: Zero Division Error5
AssertionError: Zero Division Error2
AssertionError: Zero Division Error4
AssertionError: Zero Division Error23
AssertionError: Zero Division Error24
AssertionError: Zero Division Error25
đầu ra.
AssertionError: Zero Division Error5
ví dụ 2. Từ khóa khẳng định Python với thông báo lỗi
Python3
AssertionError: Zero Division Error1
AssertionError: Zero Division Error2
AssertionError: Zero Division Error3
AssertionError: Zero Division Error4
AssertionError: Zero Division Error5
AssertionError: Zero Division Error6
AssertionError: Zero Division Error0
AssertionError: Zero Division Error5
AssertionError: Zero Division Error2
AssertionError: Zero Division Error3
AssertionError: Zero Division Error4
AssertionError: Zero Division Error5____16
AssertionError: Zero Division Error7
AssertionError: Zero Division Error8
AssertionError: Zero Division Error9
AssertionError: Zero Division Error5
AssertionError: Zero Division Error2
AssertionError: Zero Division Error14
AssertionError: Zero Division Error15
AssertionError: Zero Division Error4
AssertionError: Zero Division Error23
AssertionError: Zero Division Error24
AssertionError: Zero Division Error25
đầu ra
AssertionError: Zero Division Error
Ứng dụng thực tế
Điều này có một tiện ích lớn hơn nhiều trong vai trò Kiểm tra và Đảm bảo Chất lượng trong bất kỳ miền phát triển nào. Các loại xác nhận khác nhau được sử dụng tùy thuộc vào ứng dụng. Dưới đây là minh họa đơn giản hơn về một chương trình chỉ cho phép gửi đi lô có tất cả thực phẩm nóng, nếu không sẽ từ chối toàn bộ lô
Python3
AssertionError: Zero Division Error1
AssertionError: Zero Division Error2
AssertionError: Zero Division Error22
AssertionError: Zero Division Error23
AssertionError: Zero Division Error24
AssertionError: Zero Division Error5
AssertionError: Zero Division Error26
AssertionError: Zero Division Error27
AssertionError: Zero Division Error14
AssertionError: Zero Division Error29
AssertionError: Zero Division Error14
AssertionError: Zero Division Error31
AssertionError: Zero Division Error14
AssertionError: Zero Division Error33
AssertionError: Zero Division Error14
AssertionError: Zero Division Error35
AssertionError: Zero Division Error14
AssertionError: Zero Division Error37
AssertionError: Zero Division Error38