📋 Table of Contents
यदि आप Python कोड लिख रहे हैं या Python स्क्रिप्ट पढ़ रहे हैं, तो संभावना है कि आपने रहस्यमय पंक्ति देखी होगीif __name__ == "__main__":. यह पैटर्न अनगिनत Python प्रोग्राम में दिखाई देता है, फिर भी कई शुरुआती लोगों को यह भ्रमित करने वाला लगता है। आइए इस महत्वपूर्ण Python मुहावरे को स्पष्ट करें।
यदि आप Python कोड लिख रहे हैं या Python स्क्रिप्ट पढ़ रहे हैं, तो संभावना है कि आपने रहस्यमय पंक्ति if __name__ == “__main__”: देखी होगी। यह पैटर्न अनगिनत Python प्रोग्राम में…
यह वास्तव में क्या करता है?
यहif __name__ == "__main__":statement जांचता है कि Python स्क्रिप्ट सीधे चलाई जा रही है या किसी अन्य स्क्रिप्ट में module के रूप में import की जा रही है। जब Python एक फ़ाइल चलाता है, तो यह एक विशेष variable सेट करता है जिसे कहा जाता है__name__इस variable की value इस बात पर निर्भर करती है कि code कैसे execute किया जा रहा है।
__name__ को समझना

🎨 AI Generated: Understanding __name__
यहाँ मुख्य concept है:
- जब आप एक Python file को सीधे run करते हैं (उदाहरण के लिए,
python script.py), Python set करता है__name__to"__main__" - जब आप उस फ़ाइल को किसी दूसरी script में module के रूप में import करते हैं, तो Python सेट करता है
__name__को module के नाम पर (filename बिना .py के)
एक व्यावहारिक उदाहरण
आइए एक ठोस उदाहरण देखें। एक फ़ाइल बनाएं जिसका नाम हैcalculator.py:
python
def add(a, b): return a + b def subtract(a, b): return a - b if __name__ == "__main__": print("Running calculator.py directly") result = add(5, 3) print(f"5 + 3 = {result}")
जब आप इस फ़ाइल को सीधे चलाते हैंpython calculator.py, आप देखेंगे:
code
calculator.py को सीधे चलाना 5 + 3 = 8
हालांकि, यदि आप इस module को किसी अन्य file में import करते हैं:
python
import calculator result = calculator.add(10, 20) print(result)
इसif __name__ == "__main__":block के अंदर की code execute नहीं होगी। आप केवल देखेंगे30as output, not the “Running calculator.py directly” message.
यह उपयोगी क्यों है?

🎨 AI Generated: Why Is This Useful?
This pattern provides several important benefits:
1. Code Reusability
You can write functions and classes that can be both imported and run standalone. This makes your code more modular and reusable.
2. Testing and Debugging
You can include test code or example usage within theif __name__ == "__main__":block that runs when you execute the file directly, but doesn't interfere when the module is imported.
3. Script बनाम Module लचीलापन
एक एकल Python फ़ाइल दोहरे उद्देश्यों की पूर्ति कर सकती है: एक importable library के रूप में और एक executable script के रूप में।
सामान्य उपयोग के मामले
Unit Tests चलाना
python
def process_data(data): return [x * 2 for x in data] if __name__ == "__main__": test_data = [1, 2, 3, 4, 5] result = process_data(test_data) assert result == [2, 4, 6, 8, 10] print("सभी tests पास हो गए!")
Command-Line Interface
python
import sys def main(): if len(sys.argv) > 1: filename = sys.argv[1] process_file(filename) else: print("उपयोग: python script.py") if __name__ == "__main__": main()
उदाहरण प्रदर्शन
python
class DataProcessor: def __init__(self, data): self.data = data def process(self): return sum(self.data) if __name__ == "__main__": processor = DataProcessor([1, 2, 3, 4, 5]) print(f"Sum: {processor.process()}")
Best Practices

🎨 AI Generated: Best Practices
इस पैटर्न का उपयोग करते समय यहाँ कुछ सिफारिशें दी गई हैं:
- इसे साफ रखें:मुख्य निष्पादन लॉजिक को एक
main()फ़ंक्शन में रखें और इसेif __name__ == "__main__":ब्लॉक से कॉल करें - परीक्षण के लिए उपयोग करें:यह प्रदर्शित करने के लिए सरल टेस्ट या उदाहरण उपयोग शामिल करें कि आपका module कैसे काम करता है
- हमेशा इसे शामिल करें:भले ही आपको न लगे कि आप फ़ाइल को import करेंगे, यह pattern उपयोग करना अच्छा अभ्यास है
- व्यवहार को document करें:comments जोड़ें जो बताएं कि script सीधे चलाए जाने पर क्या करती है
निष्कर्ष
यहif __name__ == "__main__":यह pattern एक मौलिक Python idiom है जो उस code को अलग करता है जो किसी file के सीधे execute होने पर चलने के लिए होता है उस code से जो importable functionality को परिभाषित करता है। इस अवधारणा को समझने से आपको अधिक professional, पुन: प्रयोज्य Python code लिखने और आपके सामने आने वाले Python programs को बेहतर ढंग से समझने में मदद मिलेगी।
अगली बार जब आप Python code में यह line देखें, तो आप जान जाएंगे कि यह क्या कर रही है: यह जांच रही है कि script मुख्य program है या module के रूप में import की जा रही है, और तदनुसार code को execute कर रही है।
🚀 Tech की दुनिया में आगे रहें
रोज़ाना तकनीकी जानकारी, ईमानदार समीक्षाएं और व्यावहारिक गाइड प्राप्त करें।
🔗 Share this article
✍️ Leave a Comment