Article Form "Python tutorial in Hindi" will help you to learn about "Python Modules In Hindi" and its subtopics like (import statement, From....import statement, From....import statement *, Learn reload() Function in python in Hindi.) and many more.
एक Module आपको तार्किक रूप से अपने पायथन कोड को व्यवस्थित करने की अनुमति देता है। एक मॉड्यूल में संबंधित कोड को समूह को समझना और उपयोग करना आसान बनाता है। एक मॉड्यूल एक पायथन ऑब्जेक्ट है जिसे मनमाने ढंग से नामित विशेषताओं के साथ आप बाँध और संदर्भ दे सकते हैं।
बस, एक मॉड्यूल पायथन कोड से युक्त एक फ़ाइल है। एक मॉड्यूल कार्यों, वर्गों और चर को परिभाषित कर सकता है। एक मॉड्यूल रन करने योग्य कोड भी शामिल कर सकता है।
आप किसी अन्य पायथन स्रोत फ़ाइल में import statement को निष्पादित करके किसी भी पायथन स्रोत फ़ाइल को मॉड्यूल के रूप में उपयोग कर सकते हैं। import में निम्नलिखित Syntax है -
जब दुभाषिया एक आयात विवरण का सामना करता है, तो यह मॉड्यूल को आयात करता है यदि मॉड्यूल खोज पथ में मौजूद है। एक खोज पथ उन निर्देशिकाओं की एक सूची है जो एक मॉड्यूल आयात करने से पहले दुभाषिया खोजता है। उदाहरण के लिए, मॉड्यूल support.py आयात करने के लिए, आपको निम्न कमांड को स्क्रिप्ट के शीर्ष पर रखना होगा -
एक Module केवल एक बार लोड किया जाता है, चाहे वह कितनी बार आयात किया गया हो। यह कई बार Import होने पर Module के निष्पादन को बार-बार होने से रोकता है।
Python के बयान से आपको एक मॉड्यूल से वर्तमान नामस्थान में विशिष्ट विशेषताओं को आयात करने की सुविधा मिलती है।From....import में निम्नलिखित सिंटैक्स है -
यह कथन संपूर्ण मॉड्यूल फ़ाइब को वर्तमान नामस्थान में आयात नहीं करता है; यह इंपोर्ट मॉड्यूल के ग्लोबल सिंबल टेबल में माड्यूल फाइब से सिर्फ आइटम का परिचय देता है।
निम्नलिखित आयात विवरण का उपयोग करके सभी नामों को वर्तमान नामस्थान में एक मॉड्यूल से आयात करना संभव है -
यह मॉड्यूल से मौजूदा नाम स्थान में सभी वस्तुओं को आयात करने का एक आसान तरीका प्रदान करता है; हालाँकि, इस कथन को संयम से इस्तेमाल किया जाना चाहिए।
मॉड्यूल का पता लगाना
जब आप किसी मॉड्यूल को आयात करते हैं, तो पायथन दुभाषिया निम्न अनुक्रमों में मॉड्यूल की खोज करता है -
मॉड्यूल खोज पथ को सिस्टम मॉड्यूल sys.path Vriable के रूप में संग्रहीत किया जाता है। Sys.path चर में वर्तमान निर्देशिका, PYTHONPATH और स्थापना-निर्भर डिफ़ॉल्ट शामिल हैं।
PYTHONPATH एक पर्यावरण चर है, जिसमें निर्देशिकाओं की सूची है। PYTHONPATH का सिंटैक्स शेल चर पथ के समान है।
यहाँ एक Windows System से एक typical PYTHONPATH है -
Unix System Typical Path : -
चर वे नाम (पहचानकर्ता) हैं जो वस्तुओं का नक्शा बनाते हैं। एक नाम स्थान चर नामों (कुंजियों) और उनके संबंधित वस्तुओं (मूल्यों) का एक शब्दकोश है।
एक Python बयान एक Local Namespace और Global Namespace नाम स्थान में चर का उपयोग कर सकता है। यदि किसीlocal and global variable का एक ही नाम है, तो स्थानीय चर वैश्विक चर का छाया करता है।
प्रत्येक फ़ंक्शन का अपना स्थानीय नामस्थान होता है। कक्षा के तरीके सामान्य कार्यों के समान ही नियम का पालन करते हैं।
पायथन शिक्षित अनुमान लगाता है कि क्या चर स्थानीय या वैश्विक हैं। यह मानता है कि किसी भी चर को किसी फ़ंक्शन में दिया गया मान स्थानीय है।
इसलिए, किसी फ़ंक्शन के भीतर एक वैश्विक चर के लिए एक मूल्य निर्दिष्ट करने के लिए, आपको पहले वैश्विक कथन का उपयोग करना होगा।
बयान वैश्विक VarName पायथन बताता है कि VarName एक वैश्विक चर है। पायथन ने चर के लिए स्थानीय नाम स्थान की खोज बंद कर दी।
उदाहरण के लिए, हम वैश्विक नाम स्थान में एक चर मुद्रा को परिभाषित करते हैं। फ़ंक्शन मनी के भीतर, हम मनी को एक मूल्य प्रदान करते हैं, इसलिए पायथन मनी को एक स्थानीय चर के रूप में मानता है। हालाँकि, हमने इसे सेट करने से पहले लोकल वैरिएबल मनी के मान को एक्सेस किया है, इसलिए अनबाउंडलोक्योरर परिणाम है। वैश्विक कथन को रद्द करने से समस्या ठीक हो जाती है।
Dir () अंतर्निहित फ़ंक्शन एक मॉड्यूल द्वारा परिभाषित नामों वाले तार की एक क्रमबद्ध सूची देता है।
सूची में सभी मॉड्यूल, चर और फ़ंक्शन के नाम हैं जो एक मॉड्यूल में परिभाषित हैं। निम्नलिखित एक सरल उदाहरण है -
यहां, विशेष स्ट्रिंग Variable __name__ Module का नाम है, और __file__ वह फ़ाइल नाम है जिसमें से Module लोड किया गया था।
यदि किसी फ़ंक्शन के भीतर से लोकल () को कॉल किया जाता है, तो यह उन सभी नामों को वापस कर देगा, जिन्हें उस फ़ंक्शन से स्थानीय रूप से एक्सेस किया जा सकता है।
यदि Globals() को किसी फ़ंक्शन के भीतर से कॉल किया जाता है, तो यह उन सभी नामों को लौटा देगा जिन्हें उस फ़ंक्शन से वैश्विक रूप से एक्सेस किया जा सकता है।
इन दोनों कार्यों का रिटर्न प्रकार शब्दकोश है। इसलिए, कुंजियों () फ़ंक्शन का उपयोग करके नाम निकाले जा सकते हैं।
जब Module को स्क्रिप्ट में आयात किया जाता है, तो मॉड्यूल के शीर्ष-स्तरीय भाग में कोड को केवल एक बार निष्पादित किया जाता है।
इसलिए, यदि आप किसी मॉड्यूल में शीर्ष-स्तरीय कोड को पुनः प्राप्त करना चाहते हैं, तो आप पुनः लोड () फ़ंक्शन का उपयोग कर सकते हैं। पुनः लोड () फ़ंक्शन पहले से आयातित मॉड्यूल को फिर से आयात करता है। reload() फ़ंक्शन का सिंटैक्स यह है -
यहां, मॉड्यूल_नाम उस module_name है जिसे आप पुनः लोड करना चाहते हैं न कि मॉड्यूल जिसमें स्ट्रिंग नाम है। उदाहरण के लिए, हेलो मॉड्यूल को पुनः लोड करने के लिए, निम्नलिखित करें -
एक पैकेज एक पदानुक्रमित फ़ाइल निर्देशिका संरचना है जो एकल पायथन अनुप्रयोग वातावरण को परिभाषित करता है जिसमें मॉड्यूल और उप-पैकेज और उप-उप-पैकेज शामिल होते हैं, और इसी तरह।
फ़ोन निर्देशिका में उपलब्ध एक फ़ाइल पॉटशो पर विचार करें। इस फ़ाइल में स्रोत कोड की लाइन है -
इसी तरह, हमारे पास एक और दो फाइलें हैं जिनके ऊपर समान नाम के साथ अलग-अलग फ़ंक्शन हैं -
अब, फ़ोन निर्देशिका में एक और file __init__.py बनाएँ -
फ़ोन आयात करते समय अपने सभी कार्य उपलब्ध कराने के लिए, आपको __init__.py में स्पष्ट आयात स्टेटमेंट डालने की आवश्यकता है -
![]() |
Python Tutorial in hindi |
एक Module आपको तार्किक रूप से अपने पायथन कोड को व्यवस्थित करने की अनुमति देता है। एक मॉड्यूल में संबंधित कोड को समूह को समझना और उपयोग करना आसान बनाता है। एक मॉड्यूल एक पायथन ऑब्जेक्ट है जिसे मनमाने ढंग से नामित विशेषताओं के साथ आप बाँध और संदर्भ दे सकते हैं।
बस, एक मॉड्यूल पायथन कोड से युक्त एक फ़ाइल है। एक मॉड्यूल कार्यों, वर्गों और चर को परिभाषित कर सकता है। एक मॉड्यूल रन करने योग्य कोड भी शामिल कर सकता है।
Example
def print_func( par ): print "Hello : ", par return
import statement with python tutorial in Hindi
आप किसी अन्य पायथन स्रोत फ़ाइल में import statement को निष्पादित करके किसी भी पायथन स्रोत फ़ाइल को मॉड्यूल के रूप में उपयोग कर सकते हैं। import में निम्नलिखित Syntax है -
import module1[, module2[,... moduleN]
जब दुभाषिया एक आयात विवरण का सामना करता है, तो यह मॉड्यूल को आयात करता है यदि मॉड्यूल खोज पथ में मौजूद है। एक खोज पथ उन निर्देशिकाओं की एक सूची है जो एक मॉड्यूल आयात करने से पहले दुभाषिया खोजता है। उदाहरण के लिए, मॉड्यूल support.py आयात करने के लिए, आपको निम्न कमांड को स्क्रिप्ट के शीर्ष पर रखना होगा -
#!/usr/bin/python # Import module support import support # Now you can call defined function that module as follows support.print_func("Zara")
Output
Hello : Zara
एक Module केवल एक बार लोड किया जाता है, चाहे वह कितनी बार आयात किया गया हो। यह कई बार Import होने पर Module के निष्पादन को बार-बार होने से रोकता है।
From....import statement with python tutorial in Hindi
Python के बयान से आपको एक मॉड्यूल से वर्तमान नामस्थान में विशिष्ट विशेषताओं को आयात करने की सुविधा मिलती है।From....import में निम्नलिखित सिंटैक्स है -
from modname import name1[, name2[, ... nameN]]
Output
from fib import fibonacci
यह कथन संपूर्ण मॉड्यूल फ़ाइब को वर्तमान नामस्थान में आयात नहीं करता है; यह इंपोर्ट मॉड्यूल के ग्लोबल सिंबल टेबल में माड्यूल फाइब से सिर्फ आइटम का परिचय देता है।
From....import statement * with python tutorial in Hindi
निम्नलिखित आयात विवरण का उपयोग करके सभी नामों को वर्तमान नामस्थान में एक मॉड्यूल से आयात करना संभव है -
from modname import *
यह मॉड्यूल से मौजूदा नाम स्थान में सभी वस्तुओं को आयात करने का एक आसान तरीका प्रदान करता है; हालाँकि, इस कथन को संयम से इस्तेमाल किया जाना चाहिए।
मॉड्यूल का पता लगाना
जब आप किसी मॉड्यूल को आयात करते हैं, तो पायथन दुभाषिया निम्न अनुक्रमों में मॉड्यूल की खोज करता है -
- Current directory
- यदि मॉड्यूल नहीं मिला है, तो पायथन शेल शेल PYTHONPATH में प्रत्येक निर्देशिका को खोजता है।
- यदि अन्य सभी विफल रहता है, तो पायथन डिफ़ॉल्ट पथ की जांच करता है। UNIX पर, यह डिफ़ॉल्ट पथ सामान्य रूप से / usr / local / lib / python / है।
मॉड्यूल खोज पथ को सिस्टम मॉड्यूल sys.path Vriable के रूप में संग्रहीत किया जाता है। Sys.path चर में वर्तमान निर्देशिका, PYTHONPATH और स्थापना-निर्भर डिफ़ॉल्ट शामिल हैं।
PYTHONPATH Variable with python tutorial in Hindi
PYTHONPATH एक पर्यावरण चर है, जिसमें निर्देशिकाओं की सूची है। PYTHONPATH का सिंटैक्स शेल चर पथ के समान है।
यहाँ एक Windows System से एक typical PYTHONPATH है -
set PYTHONPATH = c:\python20\lib;
Unix System Typical Path : -
set PYTHONPATH = /usr/local/lib/python
Learn Namespace and scoping with python in Hindi
चर वे नाम (पहचानकर्ता) हैं जो वस्तुओं का नक्शा बनाते हैं। एक नाम स्थान चर नामों (कुंजियों) और उनके संबंधित वस्तुओं (मूल्यों) का एक शब्दकोश है।
एक Python बयान एक Local Namespace और Global Namespace नाम स्थान में चर का उपयोग कर सकता है। यदि किसीlocal and global variable का एक ही नाम है, तो स्थानीय चर वैश्विक चर का छाया करता है।
प्रत्येक फ़ंक्शन का अपना स्थानीय नामस्थान होता है। कक्षा के तरीके सामान्य कार्यों के समान ही नियम का पालन करते हैं।
पायथन शिक्षित अनुमान लगाता है कि क्या चर स्थानीय या वैश्विक हैं। यह मानता है कि किसी भी चर को किसी फ़ंक्शन में दिया गया मान स्थानीय है।
इसलिए, किसी फ़ंक्शन के भीतर एक वैश्विक चर के लिए एक मूल्य निर्दिष्ट करने के लिए, आपको पहले वैश्विक कथन का उपयोग करना होगा।
बयान वैश्विक VarName पायथन बताता है कि VarName एक वैश्विक चर है। पायथन ने चर के लिए स्थानीय नाम स्थान की खोज बंद कर दी।
उदाहरण के लिए, हम वैश्विक नाम स्थान में एक चर मुद्रा को परिभाषित करते हैं। फ़ंक्शन मनी के भीतर, हम मनी को एक मूल्य प्रदान करते हैं, इसलिए पायथन मनी को एक स्थानीय चर के रूप में मानता है। हालाँकि, हमने इसे सेट करने से पहले लोकल वैरिएबल मनी के मान को एक्सेस किया है, इसलिए अनबाउंडलोक्योरर परिणाम है। वैश्विक कथन को रद्द करने से समस्या ठीक हो जाती है।
#!/usr/bin/python Money = 2000 def AddMoney(): # Uncomment the following line to fix the code: # global Money Money = Money + 1 print Money AddMoney() print Money
dir() Function with python tutorial in Hindi
Dir () अंतर्निहित फ़ंक्शन एक मॉड्यूल द्वारा परिभाषित नामों वाले तार की एक क्रमबद्ध सूची देता है।
सूची में सभी मॉड्यूल, चर और फ़ंक्शन के नाम हैं जो एक मॉड्यूल में परिभाषित हैं। निम्नलिखित एक सरल उदाहरण है -
#!/usr/bin/python # Import built-in module math import math content = dir(math) print content
Output
['__doc__', '__file__', '__name__', 'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'degrees', 'e', 'exp', 'fabs', 'floor', 'fmod', 'frexp', 'hypot', 'ldexp', 'log', 'log10', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh']
यहां, विशेष स्ट्रिंग Variable __name__ Module का नाम है, और __file__ वह फ़ाइल नाम है जिसमें से Module लोड किया गया था।
Globals() and Locals() Funcation with python tutorial in Hindi
Globals() and Locals() Funcation in python का उपयोग वैश्विक और स्थानीय नामस्थानों में उन नामों को वापस करने के लिए किया जा सकता है जहां से उन्हें बुलाया जाता है।
यदि किसी फ़ंक्शन के भीतर से लोकल () को कॉल किया जाता है, तो यह उन सभी नामों को वापस कर देगा, जिन्हें उस फ़ंक्शन से स्थानीय रूप से एक्सेस किया जा सकता है।
यदि Globals() को किसी फ़ंक्शन के भीतर से कॉल किया जाता है, तो यह उन सभी नामों को लौटा देगा जिन्हें उस फ़ंक्शन से वैश्विक रूप से एक्सेस किया जा सकता है।
इन दोनों कार्यों का रिटर्न प्रकार शब्दकोश है। इसलिए, कुंजियों () फ़ंक्शन का उपयोग करके नाम निकाले जा सकते हैं।
Learn reload() Funcation in python in hindi : -
जब Module को स्क्रिप्ट में आयात किया जाता है, तो मॉड्यूल के शीर्ष-स्तरीय भाग में कोड को केवल एक बार निष्पादित किया जाता है।
इसलिए, यदि आप किसी मॉड्यूल में शीर्ष-स्तरीय कोड को पुनः प्राप्त करना चाहते हैं, तो आप पुनः लोड () फ़ंक्शन का उपयोग कर सकते हैं। पुनः लोड () फ़ंक्शन पहले से आयातित मॉड्यूल को फिर से आयात करता है। reload() फ़ंक्शन का सिंटैक्स यह है -
reload(module_name)
यहां, मॉड्यूल_नाम उस module_name है जिसे आप पुनः लोड करना चाहते हैं न कि मॉड्यूल जिसमें स्ट्रिंग नाम है। उदाहरण के लिए, हेलो मॉड्यूल को पुनः लोड करने के लिए, निम्नलिखित करें -
reload(hello)
Packages with python tutorial in Hindi
एक पैकेज एक पदानुक्रमित फ़ाइल निर्देशिका संरचना है जो एकल पायथन अनुप्रयोग वातावरण को परिभाषित करता है जिसमें मॉड्यूल और उप-पैकेज और उप-उप-पैकेज शामिल होते हैं, और इसी तरह।
फ़ोन निर्देशिका में उपलब्ध एक फ़ाइल पॉटशो पर विचार करें। इस फ़ाइल में स्रोत कोड की लाइन है -
#!/usr/bin/python def Pots(): print "I'm Pots Phone"
इसी तरह, हमारे पास एक और दो फाइलें हैं जिनके ऊपर समान नाम के साथ अलग-अलग फ़ंक्शन हैं -
- function Isdn () वाले phone / Isdn.py फ़ाइल
- function G3 () वाले phone / G3.py फ़ाइल
अब, फ़ोन निर्देशिका में एक और file __init__.py बनाएँ -
- phone / __ init__.py
फ़ोन आयात करते समय अपने सभी कार्य उपलब्ध कराने के लिए, आपको __init__.py में स्पष्ट आयात स्टेटमेंट डालने की आवश्यकता है -
from Pots import Pots from Isdn import Isdn from G3 import G3इन lines to __init__.py में जोड़ने के बाद, आपके पास ये सभी वर्ग उपलब्ध हैं जब आप फ़ोन पैकेज आयात करते हैं।
#!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()
Output
I'm Pots Phone I'm 3G Phone I'm ISDN Phoneउपरोक्त उदाहरण में, हमने प्रत्येक फ़ाइल में एकल फ़ंक्शन का उदाहरण लिया है, लेकिन आप अपनी फ़ाइलों में कई फ़ंक्शन रख सकते हैं। आप उन फ़ाइलों में विभिन्न पायथन कक्षाओं को भी परिभाषित कर सकते हैं और फिर आप उन कक्षाओं से अपने पैकेज बना सकते हैं।