Module Attributes in Python – Import व Reloads द्वारा वास्तव में हम किसी Script File के Codes को Dynamically Launch करते हैं क्योंकि ये दोनों उस File के Codes को Execute कर देते हैं, जिन्हें Current Script File में Import या Load किया जाता है। इसलिए Modules वे Tools होते हैं, जिनके द्वारा Code Libraries के रूप में Program Codes को विभिन्न Scripts के बीच Share किया जाता है।
अन्य शब्दों में कहें तो Modules मूलत: Variable Names का एक Package होते हैं जिन्हें Namespace के नाम से जाना जाता है। इस Package के अन्दर जो Names होते हैं, उन्हें Attributes कहते हैं और Python Interpreter द्वारा किसी Module के Contents को Outside World यानी किसी अन्य Script Files में Attributes के माध्यम से ही Available करवाया जाता है।
इस प्रकार से सरल शब्दों में कहें तो Attribute केवल एक Variable Name होता है जो कि किसी Specific Object जैसे कि Module के साथ Attached रहता है।
जब कोई Top-Level Script File किसी Module को Import करता है, तब वह Script File उस Module File में Exist सभी Functions, Classes, Variables आदि को उनके नाम से Access करने में सक्षम हो जाता है।
उदाहरण के लिए यदि किसी Module File X में hello(), hi() और bye() नाम के तीन Functions हैं, myName और yourName नाम के दो Variables हैं और Greetings नाम की एक Class है, तो जब हम इस Module File X को Current Script File Main में Import करते हैं, तो इस Main Script File में हमें Module File X के सभी Names (hello, hi, bye, myName, yourName, Greetings) प्राप्त हो जाते हैं, और हम इन सभी को Current Script File में Directly उनके नाम से Use कर सकते हैं।
यानी हम Main Script File में Greetings Class का Object Create कर सकते हैं, myName व yourName Variables को Value Get/Set करके Access and Manipulate कर सकते हैं और hello(), hi(), bye() Functions को Invoke कर सकते हैं, जबकि ये सभी Current File में उनके Original Names के माध्यम से केवल इसलिए उपलब्ध हैं, क्योंकि हमने Module File X को Current Main File में Import कर लिया है।
Attributes की Working को समझने के लिए हम एक Simple सा Example Create कर सकते हैं, जहां हम निम्नानुसार ModuleAttribute.py नाम की एक Module File Create कर रहे हैं, जिसमें title नाम का एक Variable Declare किया गया है-
अब जब हम इस File को MainModule.py Script File में Import करते हैं, तो ModuleAttribute.py File में Exist ये One-Line Code Execute हो जाता है और Module का Attribute Generate हो जाता है और उस Attribute का नाम title होता है।
इसलिए अब हम हमारी MainModule.py Script File में इस title Attribute को निम्नानुसार तरीके से Access कर सकते हैं-
तकनीकी रूप से देखें तो from Statement, Module के Attributes को Copy कर लेता है और Current Script में Attributes को इस तरह से Treat करने की सुविधा दे देता है, जैसे कि वे Current Script File में ही Define किए गए हों।
इसीलिए इस Example में हमने title Attribute को बिना Current File में Define किए हुए भी Directly Use कर पा रहे हैं। जबकि यदि हम चाहें, तो इसी Import Statement को निम्नानुसार तरीके से भी Import and Use कर सकते हैं-
और जब हम इस MainModule.py File को Run करते हैं, तब हमें निम्नानुसार Output प्राप्त होता है-
जैसा कि उपरोक्त Output से हम समझ सकते हैं कि इस बात से कोई फर्क नहीं पड़ता कि हम import Statement द्वारा Module को Import कर रहे हैं या from Statement द्वारा, ModuleAttribute.py नाम की Import होने वाली File के Codes पहले Execute हो रहे हैं और MainModule.py Script File, Attributes के माध्यम से ModuleAttribute.py File के Variables को Access करने में सक्षम हो रहा है।
ठीक इसी तरह से ModuleAttribute.py File में यदि हम कोई Function, Class या अन्य Objects Create करें, तो उन सभी को भी Named Attributes के माध्यम से हम Exactly उसी तरह से MainModule.py File में Import करके Access and Manipulate कर सकते हैं, जिस तरह से title Attribute को किया है।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Python in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी है, तो निश्चित रूप से ये EBook भी आपके लिए काफी उपयोगी साबित होगी।
Python in Hindi | Page: 602 | Format: PDF