Introduction to Python Modules
एक बार कोई program लिखने के बाद यदि आप python interpreter को close करके दोबारा start करते है तो आपके द्वारा लिखा गया वह program ग़ायब हो जाता है। ऐसा इसलिए होता है क्योंकि python interpreter के interactive mode में लिखे गए code को store नहीं किया जाता है।
यही कारण है की जिन programs को आप बाद में भी use करना चाहते है उन्हें आप scripting mode में write करते है। Scripting mode में सबसे पहले आप program को लिखते है और .py extension से save कर लेते है। इसके बाद interpreter के माध्यम से आप उस file को execute करते है।
When You Need Same Functionality Across Many Scripts
इस प्रकार scripting mode में program में execute किये गए programs हमेशा available होते है। जब आप scripting mode में कोई बड़ा project या program create करते है तो उसे manage करने के लिए आपको उसे कई अलग अलग files में store करने की आवश्यकता होती है।
जब आप ऐसा करते है तो इन files में कुछ definitions (variables और functions) ऐसे भी हो सकते है जिन्हे project की सभी files में include करने की जरुरत होती है। ऐसे में हर file में अलग से उन definition को define करना बहुत ही time consuming होगा और इससे program की readability भी कम हो जाएगी।
File Containing Python Definitions and Statements
ऐसी situations के लिए python आपको modules का concept provide करती है। एक module एक file होती है जिसमे python definitions जैसे की variables, functions और दूसरे statements को store किया जाता है।
ऐसी definition जिन्हें आप कई multiple scripts में use करना चाहते है उन्हें एक module में define कर सकते है। इसके बाद आप उस module को अलग अलग script files में import कर सकते है और उन definitions को use कर सकते है।
इसके अलावा एक module की definitions को python interpreter के interactive mode में भी use किया जा सकता है।
Modules को use करने से आपको same definitions को अलग अलग scripting files में बार बार लिखने की आवश्यकता नहीं होती है।
Can Import Other Modules
एक module को कई दूसरे modules में भी import किया जा सकता है। इस प्रकार जिस module ने दूसरे module को import किया है उसे अपनी script file में import करके आप दोनों modules की definitions को एक साथ use कर सकते है।
एक module file को आप कुछ भी नाम दे सकते है। लेकिन Module file का extension .py ही होना चाहिए।
Global Variable _name_
सभी module files के साथ python द्वारा आपको by default _name_ global variable available होता है। यह variable module का नाम store करता है। इस variable के माध्यम से किसी module का नाम access किया जा सकता है।
Can Define Executable Statements Also
एक module के अंदर definitions के अलावा executable statements जैसे की function call आदि भी define किये जा सकते है। ये statements module को import किये जाने पर automatically execute हो जाते है।
Definition Names Never Conflict
अलग अलग modules में define की गयी same नाम की definitions एक दूसरे से conflict नहीं करती है। यह modules को use करने का बहुत ही महत्वपूर्ण फायदा है।
यदि आप एक से अधिक modules को import करते है तो उनकी definitions के बीच conflict के बारे में आपको चिंता करने की आवश्यकता नहीं है।
Variants of import Statement
एक import statement के माध्यम से ही आप अपनी script के अंदर modules को import करते है। लेकिन यह आवश्यक नहीं की आप हमेशा संपूर्ण module को ही import करना चाहते है ऐसा भी हो सकता है की आप सिर्फ module के किसी particular part को ही import करना चाहते है।
ऐसी ही कुछ situations को ध्यान में रखते हुए python में import statement के कई variants provide किये गए है।
एक module को directly import statement से import किया जा सकता है।
import <module-name> |
लेकिन ऐसा करने से उसकी defintions को access करने के लिए आपको उस module के नाम की आवश्यकता होती है।
आप चाहे तो module की definitions को directly import कर सकते है ऐसा करने से उन defintions को use करने के लिए आपको module के नाम की आवश्यकता नहीं होगी।
उदाहरण के लिए आप किसी एक ही function को module से import करना चाहते है तो ऐसा आप इस प्रकार कर सकते है।
from <module-name> import <function-name> |
यदि आप एक से अधिक functions या variables को access करना चाहते है तो इसके लिए आप उन्हें comma से separate करके लिखते है।
यदि आप एक module की सभी definitions को python script में import करना चाहते है तो ऐसा आप इस प्रकार कर सकते है।
from <module-name> import * |
Import statement के बाद define किया गया * operator यह बताता है की आप module की सभी definitions को import करना चाहते है।
जब आप from modifier का उपयोग करते हुए module की definitions को access करते है तो उन्हें आप बिना module के नाम के use कर सकते है।
Example of Python Modules
myModule.py
def printMessage(name) { print(‘Hello’,name) } |
Interpreter Interactive Mode
>>>import myModule >>>myModule.printMessage(Best Hindi Tutorials) Hello Best Hindi Tutorials |
0 Comments