Python मुख्य फ़ंक्शन और विधि उदाहरण: def Main() को समझें
एचएमबी क्या है? Python मुख्य समारोह?
Python मुख्य कार्य किसी भी प्रोग्राम का शुरुआती बिंदु है। जब प्रोग्राम चलाया जाता है, तो पायथन इंटरप्रेटर कोड को क्रमिक रूप से चलाता है। मुख्य फ़ंक्शन केवल तभी निष्पादित होता है जब इसे एक के रूप में चलाया जाता है Python कार्यक्रम। यदि इसे मॉड्यूल के रूप में आयात किया जाता है तो यह मुख्य फ़ंक्शन नहीं चलाएगा।
def main() फ़ंक्शन क्या है? Python? इसे समझने के लिए, निम्नलिखित उदाहरण कोड पर विचार करें
def main() उदाहरण 1
def main(): print ("Hello World!") print ("Guru99")
यहाँ, हमें प्रिंट के दो टुकड़े मिले- एक मुख्य फ़ंक्शन के भीतर परिभाषित किया गया है जो कि “Hello World!” है और दूसरा स्वतंत्र है, जो कि “Guru99” है। जब आप फ़ंक्शन def main () चलाते हैं:
- केवल “Guru99” प्रिंट करता है
- और कोड “हैलो वर्ल्ड!” नहीं
ऐसा इसलिए है क्योंकि हमने आह्वान की घोषणा नहीं की फ़ंक्शन “if__name__== “__main__”.
यह महत्वपूर्ण है कि मुख्य फ़ंक्शन को परिभाषित करने के बाद, आप if__name__== “__main__” द्वारा कोड को कॉल करें और फिर कोड को चलाएँ, तभी आपको प्रोग्रामिंग कंसोल में “hello world!” आउटपुट मिलेगा। निम्नलिखित कोड पर विचार करें
def main() उदाहरण 2
def main(): print("Hello World!") if __name__ == "__main__": main() print("Guru99")
इस मामले में गुरु99 मुद्रित है।
इसका स्पष्टीकरण इस प्रकार है,
- . Python जब इंटरप्रेटर किसी स्रोत फ़ाइल को पढ़ता है, तो वह उसमें मौजूद सभी कोड को निष्पादित कर देता है।
- . Python “स्रोत फ़ाइल” को मुख्य प्रोग्राम के रूप में चलाता है, यह विशेष चर (__name__) को एक मान (“__main__”) पर सेट करता है।
- जब आप पायथन में मुख्य फ़ंक्शन निष्पादित करते हैं, तो यह “if” कथन को पढ़ेगा और जाँच करेगा कि क्या __name__ __main__ के बराबर है।
- In Python “if__name__== “__main__” आपको चलाने की अनुमति देता है Python फ़ाइलें या तो पुन: प्रयोज्य मॉड्यूल या स्टैंडअलोन प्रोग्राम।
__name__ चर और Python मॉड्यूल
__name__ चर के महत्व को समझने के लिए Python मुख्य फ़ंक्शन विधि के लिए, निम्नलिखित कोड पर विचार करें:
def main(): print("hello world!") if __name__ == "__main__": main() print("Guru99") print("Value in built variable name is: ",__name__)
अब मान लीजिए, कोड को एक मॉड्यूल के रूप में आयात किया जाता है
import MainFunction print("done")
यहाँ, कोड स्पष्टीकरण है:
सी की तरह, Python तुलना के लिए == का उपयोग करता है जबकि असाइनमेंट के लिए = का उपयोग करता है। Python इंटरप्रेटर मुख्य फ़ंक्शन का उपयोग दो तरीकों से करता है
प्रत्यक्ष रन:
- __नाम__=__मुख्य__
- यदि कथन == सत्य है, और _main_will में स्क्रिप्ट निष्पादित की जाएगी
मॉड्यूल के रूप में आयात करें
- __name__= मॉड्यूल का फ़ाइल नाम
- यदि कथन == गलत है, और __main__ में स्क्रिप्ट निष्पादित नहीं होगी
जब कोड निष्पादित होता है, तो यह “if” के साथ मॉड्यूल नाम की जांच करेगा। यह तंत्र सुनिश्चित करता है कि मुख्य फ़ंक्शन केवल प्रत्यक्ष रन के रूप में निष्पादित किया जाता है, न कि मॉड्यूल के रूप में आयात किए जाने पर।
उपरोक्त उदाहरण हैं Python 3 कोड, यदि आप उपयोग करना चाहते हैं Python 2, कृपया निम्नलिखित कोड पर विचार करें
def main(): print "Hello World!" if __name__== "__main__": main() print "Guru99"
In Python 3, आपको if__name का उपयोग करने की आवश्यकता नहीं है। निम्न कोड भी काम करता है
def main(): print("Hello World!") main() print("Guru99")
नोट: सुनिश्चित करें कि मुख्य फ़ंक्शन को परिभाषित करने के बाद, आप कुछ इंडेंट छोड़ दें और def main(): फ़ंक्शन के ठीक नीचे कोड घोषित न करें अन्यथा, यह इंडेंट त्रुटि देगा।