Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

इंटरएक्टिव पायथन उदाहरण का परीक्षण करें (सबसे अच्छा)


पायथन के मानक वितरण में 'doctest' मॉड्यूल शामिल है। इस मॉड्यूल की कार्यक्षमता पाठ के टुकड़ों की खोज करना संभव बनाती है जो इंटरैक्टिव पायथन सत्रों की तरह दिखते हैं और इन सत्रों को यह देखने के लिए निष्पादित करते हैं कि क्या वे बिल्कुल दिखाए गए अनुसार काम करते हैं। ये उदाहरण क्लास, मॉड्यूल या फ़ंक्शन में डॉकस्ट्रिंग एक्सप्रेशन से निकाले गए हैं। Doctests को साथ वाली टेक्स्ट फ़ाइल की टेक्स्ट फ़ाइल से भी चलाया जा सकता है।

पायथन में, एक 'डॉकस्ट्रिंग' एक स्ट्रिंग अक्षर है जो किसी वर्ग, फ़ंक्शन या मॉड्यूल में पहली अभिव्यक्ति के रूप में प्रकट होता है। जब सूट निष्पादित किया जाता है तो इसे अनदेखा कर दिया जाता है, लेकिन इसे कंपाइलर द्वारा पहचाना जाता है और संलग्न वर्ग, फ़ंक्शन या मॉड्यूल की __doc__ विशेषता में डाल दिया जाता है।

डॉकस्ट्रिंग को आमतौर पर पायथन कोड के विभिन्न भागों के उदाहरण के उपयोग का वर्णन करने के लिए रखा जाता है। doctest मॉड्यूल यह सत्यापित करने की अनुमति देता है कि ये डॉकस्ट्रिंग कोड में रुक-रुक कर होने वाले संशोधनों के साथ अप-टू-डेट हैं।

निम्नलिखित कोड में, उदाहरण के उपयोग के साथ एक फैक्टोरियल फ़ंक्शन को परिभाषित किया गया है। यह सत्यापित करने के लिए कि उदाहरण का उपयोग सही है या नहीं, टेस्टमॉड () फ़ंक्शन को doctest मॉड्यूल में कॉल करें।

def add(a,b):
'''
>>> add(10,20)
30
>>> add('aaa','bbb')
'aaabbb'
>>> add('aaa',20)
Traceback (most recent call last):
...
TypeError: must be str, not int
'''
return a+b

सबसे पहले उपरोक्त स्क्रिप्ट को mytest.py के रूप में दर्ज करें और सहेजें और कमांड लाइन से इस स्क्रिप्ट को निष्पादित करने का प्रयास करें।

Python mytest.py

उदाहरण विफल होने तक कोई आउटपुट नहीं दिखाया जाएगा। अब कमांड लाइन को बदलें

Python mytest.py –v

अब कंसोल निम्न परिणाम दिखाएगा -

F:\Python36>python mytest.py -v
Trying:
add(10,20)
Expecting:
30
ok
Trying:
add('aaa','bbb')
Expecting:
'aaabbb'
ok
Trying:
add('aaa',20)
Expecting:
Traceback (most recent call last):
...
TypeError: must be str, not int
ok
1 items had no tests:
__main__
1 items passed all tests:
3 tests in __main__.add
3 tests in 2 items.
3 passed and 0 failed.
Test passed.

टेक्स्ट फ़ाइल में उदाहरणों की जांच करना

doctest का एक और सरल अनुप्रयोग टेक्स्ट फ़ाइल में इंटरैक्टिव उदाहरणों का परीक्षण कर रहा है। यह टेस्टफाइल () फ़ंक्शन के साथ किया जा सकता है।

निम्नलिखित टेक्स्ट को 'example.txt' नाम की टेक्स्ट फाइल में स्टोर किया जाता है

Using ''add''
-------------------
This is an example text file . First import
''add'' from the ''mytest'' module:
>>> from mytest import add
>>> add(10,20)
30

फ़ाइल सामग्री को docstring के रूप में माना जाता है। टेक्स्ट फ़ाइल में उदाहरणों को सत्यापित करने के लिए doctest मॉड्यूल के टेस्टफाइल () फ़ंक्शन का उपयोग करें।

def add(a,b):
return a+b
if __name__ == "__main__":
import doctest
doctest.testfile("example.txt")
  • जैसा कि टेस्टमॉड () के साथ होता है, टेस्टफाइल () तब तक कुछ भी प्रदर्शित नहीं करेगा जब तक कि कोई उदाहरण विफल न हो जाए। यदि कोई उदाहरण विफल हो जाता है, तो असफल उदाहरण (उदाहरणों) और विफलता के कारण (ओं) को कंसोल पर प्रिंट किया जाता है, उसी प्रारूप का उपयोग करके टेस्टमॉड ()।

  • ज्यादातर मामलों में एक इंटरैक्टिव कंसोल सत्र की कॉपी-पेस्ट ठीक काम करती है, लेकिन किसी विशिष्ट पायथन शेल का सटीक अनुकरण करने की कोशिश नहीं कर रहा है।

  • किसी भी अपेक्षित आउटपुट को कोड वाली अंतिम '>>>' या '...' लाइन का तुरंत पालन करना चाहिए, और अपेक्षित आउटपुट (यदि कोई हो) अगले '>>>' या ऑल-व्हाट्सएप लाइन तक विस्तारित होता है।

  • अपेक्षित आउटपुट में ऑल-व्हाट्सएप लाइन नहीं हो सकती है, क्योंकि इस तरह की लाइन को अपेक्षित आउटपुट के अंत का संकेत देने के लिए लिया जाता है। यदि अपेक्षित आउटपुट में एक रिक्त रेखा है, तो को अपने सबसे अच्छे उदाहरण में रखें, प्रत्येक स्थान पर एक रिक्त रेखा अपेक्षित है।

इस लेख में doctest मॉड्यूल में टेस्टमॉड () और टेस्टफाइल () फ़ंक्शन पर चर्चा की गई है।


  1. पायथन - कीवी विंडो में लेबल जोड़ें

    किवी अनुप्रयोगों के तेजी से विकास के लिए एक पेन सोर्स पायथन लाइब्रेरी है जो मल्टी-टच ऐप्स जैसे अभिनव यूजर इंटरफेस का उपयोग करती है। इसका उपयोग एंड्रॉइड एप्लिकेशन के साथ-साथ डेस्कटॉप एप्लिकेशन को विकसित करने के लिए किया जाता है। इस लेख में हम देखेंगे कि किवी के माध्यम से बनाई गई विंडो में लेबल कैसे ज

  1. पायथन टिंकर बटन में शैली जोड़ें

    पायथन पर आधारित जीयूआई प्रोग्राम बनाने के लिए टिंकर को बहुत समर्थन है। यह टिंकर कैनवास पर एक बटन को उसके फ़ॉन्ट, आकार, रंग आदि के आधार पर स्टाइल करने के विभिन्न तरीके प्रदान करता है। इस लेख में हम देखेंगे कि कैनवास पर सामान्य रूप से विशिष्ट बटन या सभी बटनों पर शैली कैसे लागू करें। विशिष्ट बटनों पर ल

  1. पायथन में पथ कैसे जोड़ें?

    पायथन एक प्रोग्रामिंग भाषा है जिसे पहली बार 1991 में जारी किया गया था। इसमें एक ऐसा एप्लिकेशन है जिसका उपयोग कई ऑपरेटिंग सिस्टम पर किया जा सकता है और डेवलपर्स इस पर नया कोड लिख और विकसित कर सकते हैं। पायथन सबसे व्यापक रूप से उपयोग की जाने वाली प्रोग्रामिंग भाषाओं में से एक है, क्योंकि इसमें डेवलपर औ