एक अभिकथन एक विवेक-जांच है जिसे आप कार्यक्रम के अपने परीक्षण के साथ चालू या बंद कर सकते हैं।
किसी दावे के बारे में सोचने का सबसे आसान तरीका यह है कि उसकी तुलना उठाएँ-अगर . से की जाए बयान (या अधिक सटीक होने के लिए, एक बढ़ा-चढ़ाकर बयान)। एक व्यंजक का परीक्षण किया जाता है, और यदि परिणाम गलत आता है, तो एक अपवाद उठाया जाता है।
संस्करण 1.5 में पेश किए गए पायथन के नवीनतम कीवर्ड, मुखर कथन द्वारा अभिकथन किए जाते हैं।
प्रोग्रामर अक्सर वैध इनपुट की जांच के लिए फ़ंक्शन की शुरुआत में और मान्य आउटपुट की जांच के लिए फ़ंक्शन कॉल के बाद अभिकथन करते हैं।
जोर बयान
जब यह एक मुखर बयान का सामना करता है, तो पायथन साथ की अभिव्यक्ति का मूल्यांकन करता है, जो उम्मीद के मुताबिक सच है। यदि अभिव्यक्ति गलत है, तो पायथन एक AssertionError अपवाद उठाता है।
वाक्यविन्यास जोर देने के लिए है -
assert Expression[, Arguments]
यदि दावा विफल हो जाता है, तो पायथन ArgumentExpression का उपयोग AssertionError के तर्क के रूप में करता है। AssertionError अपवादों को कोशिश-छोड़कर कथन का उपयोग करके किसी भी अन्य अपवाद की तरह पकड़ा और संभाला जा सकता है, लेकिन यदि संभाला नहीं जाता है, तो वे प्रोग्राम को समाप्त कर देंगे और ट्रेसबैक उत्पन्न करेंगे।
उदाहरण
यहां एक फ़ंक्शन है जो एक तापमान को डिग्री केल्विन से डिग्री फ़ारेनहाइट में परिवर्तित करता है। चूंकि शून्य डिग्री केल्विन जितना ठंडा होता है उतना ही ठंडा होता है, यदि यह एक नकारात्मक तापमान देखता है तो फ़ंक्शन ठीक हो जाता है -
#!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)
आउटपुट
जब उपरोक्त कोड निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
32.0 451 Traceback (most recent call last): File "test.py", line 9, in <module> print KelvinToFahrenheit(-5) File "test.py", line 4, in KelvinToFahrenheit assert (Temperature >= 0),"Colder than absolute zero!" AssertionError: Colder than absolute zero!