उदाहरण के साथ पायथन में आयात मॉड्यूल

विषय - सूची:

Anonim

पायथन में मॉड्यूल क्या हैं?

एक मॉड्यूल अजगर कोड के साथ एक फ़ाइल है। कोड को चर, कार्यों, या वर्ग के रूप में परिभाषित किया जा सकता है। फ़ाइल नाम मॉड्यूल नाम बन जाता है।

उदाहरण के लिए, यदि आपका फ़ाइल नाम गुरु99 . py है, तो मॉड्यूल नाम गुरु99 होगा । मॉड्यूल कार्यक्षमता के साथ, आप एक फ़ाइल के अंदर सब कुछ लिखने के बजाय अपने कोड को विभिन्न फ़ाइलों में तोड़ सकते हैं।

इस ट्यूटोरियल में, आप सीखेंगे:

  • पायथन में मॉड्यूल क्या हैं?
  • पायथन आयात मॉड्यूल
  • पायथन में एक मॉड्यूल कैसे बनाएं और आयात करें?
  • पायथन में एक कक्षा का आयात करना
  • आयात मॉड्यूल से उपयोग करना
  • मॉड्यूल से सब कुछ आयात करना
  • आयात मॉड्यूल का उपयोग करना
  • आयात का उपयोग *
  • दिर () फ़ंक्शन
  • संकुल
  • अजगर
  • आयात में मॉड्यूल उपनाम का उपयोग करना
  • अजगर में निरपेक्ष और सापेक्ष आयात
  • UsingAbsoluteImports
  • UsingRelativeImports

पायथन आयात मॉड्यूल क्या है?

एक फाइल को अजगर में एक मॉड्यूल के रूप में माना जाता है। मॉड्यूल का उपयोग करने के लिए, आपको आयात कीवर्ड का उपयोग करके इसे आयात करना होगा । फाइल के अंदर मौजूद फंक्शन या वैरिएबल को दूसरी फाइल में मॉड्यूल इम्पोर्ट करके इस्तेमाल किया जा सकता है। यह कार्यक्षमता अन्य भाषाओं में उपलब्ध है, जैसे टाइपस्क्रिप्ट, जावास्क्रिप्ट, जावा, रूबी इत्यादि।

पायथन में एक मॉड्यूल कैसे बनाएं और आयात करें?

अब हम एक मॉड्यूल बनाएंगे और इसे दूसरी फ़ाइल में आयात करेंगे।

स्क्रीनशॉट में दिखाए अनुसार मॉड्यूल बनाने और आयात करने के लिए यहां प्रवाह है:

अजगर में एक मॉड्यूल बनाने के लिए दिए गए चरणों का पालन करें।

कोड का परीक्षण करने के लिए उपयोग किया जाने वाला फ़ोल्डर संरचना निम्नानुसार है:

modtest/test.pydisplay.py

चरण 1) एक फ़ाइल बनाएं और इसे टेस्टोस्टेरोन नाम दें

चरण 2) अंदर test.py एक समारोह बनाएगा जिसे display_message () कहा जाता है

Def display_message():return "Welcome to Guru99 Tutorials!"

स्टेप 3) अब एक और फाइल डिस्प्लेहोम बनाएं।

चरण ४) अंदर की ओर जाने वाले डिस्प्लेकोम, मॉड्यूलेटस्टेम फ़ाइल आयात करेगा, जैसा कि नीचे दिखाया गया है:

import test

आयात करते समय, आपको test.py लेकिन सिर्फ फ़ाइल का नाम नहीं बताना होगा।

चरण 5)

फिर आप test.py के अंदर display display_message () से कॉल कर सकते हैं, आपको mod_name.function_name का उपयोग करने की आवश्यकता है।

उदाहरण के लिए test.display_message ()।

Import testprint(test.display_message())

चरण 6)

जब आप Display.py को निष्पादित करते हैं, तो आपको निम्न आउटपुट मिलेगा:

Welcome to Guru99 Tutorials!

पायथन में एक कक्षा का आयात करना

इससे पहले, हमने एक फ़ंक्शन के साथ एक सरल मॉड्यूल देखा है। यहां एक क्लास बनाएंगे और दूसरी फाइल के अंदर क्लास को रेफर करेंगे।

कोड का परीक्षण करने के लिए फ़ोल्डर संरचना निम्नानुसार है:

myproj/Car.pydisplay.py

निम्नलिखित कोड के साथ Car.py नामक एक फ़ाइल बनाएँ:

फ़ाइल नाम: Car.py

class Car:brand_name = "BMW"model = "Z4"manu_year = "2020"def __init__(self, brand_name, model, manu_year):self.brand_name = brand_nameself.model = modelself.manu_year = manu_yeardef car_details(self):print("Car brand is ", self.brand_name)print("Car model is ", self.model)print("Car manufacture year is ", self.manu_year)def get_Car_brand(self):print("Car brand is ", self.brand_name)def get_Car_model(self):print("Car model is ", self.model)

Car.py फ़ाइल में, brand_name, मॉडल और manu_year विशेषताएँ हैं। वर्ग के अंदर परिभाषित कार्य car_details (), get_Car_brand (), get_Car_model () हैं।

आइये अब Car.py फ़ाइल को एक अन्य फाइल में मॉड्यूल के रूप में प्रदर्शित करते हैं, जिसे display.py कहते हैं।

फ़ाइल नाम: display.py

import Carcar_det = Car.Car("BMW","Z5", 2020)print(car_det.brand_name)print(car_det.car_details())print(car_det.get_Car_brand())print(car_det.get_Car_model())

आउटपुट:

BMWCar brand is BMWCar model is Z5Car manufacture year is 2020Car brand is BMWCar model is Z5

इसलिए हम कार मॉड्यूल का उपयोग करके सभी चर और कार्यों को Car.py से एक्सेस कर सकते हैं।

आयात मॉड्यूल से उपयोग करना

आप मॉड्यूल का केवल एक छोटा सा हिस्सा आयात कर सकते हैं, केवल पूर्ण कोड आयात करने के बजाय मॉड्यूल से केवल आवश्यक फ़ंक्शन और चर नाम।

जब आप केवल विशिष्ट चीजें आयात करना चाहते हैं, तो आप जो चाहते हैं उसे आयात करने के लिए "से" कीवर्ड का उपयोग कर सकते हैं।

तो वाक्य रचना है

from module import your function_name , variables,… etc.

कोड का परीक्षण करने के लिए उपयोग किया जाने वाला फ़ोल्डर संरचना निम्नानुसार है:

modtest/test.pydisplay.py

Test.py में दिखाए गए अनुसार 2 कार्य हैं:

फ़ाइल नाम: test.py

defdisplay_message():return "Welcome to Guru99 Tutorials!"def display_message1():return "All about Python!"

अब आप display_message () फ़ंक्शन चाहते हैं। आपके द्वारा आयात किए जा रहे फ़ंक्शन या चर को नीचे दिखाए गए अनुसार सीधे एक्सेस किया जा सकता है:

फ़ाइल का नाम: display.py

from test import display_messageprint(display_message())

आउटपुट:

Welcome to Guru99 Tutorials!

अब यदि आप function display_message1 () का उपयोग करते हैं, तो यह एक त्रुटि देगा कि फ़ंक्शन को नीचे दिखाए गए अनुसार परिभाषित नहीं किया गया है:

from test import display_messageprint(display_message1())

आउटपुट:

Traceback (most recent call last):File "display.py", line 3, in print(display_message1())Name Error: name 'display_message1' is not defined

मॉड्यूल से सब कुछ आयात करना

आयात आपको मॉड्यूल नाम, यानी फ़ाइल नाम या लाइब्रेरी के बाद आयात किए जाने वाले पूर्ण मॉड्यूल का उपयोग करने की अनुमति देता है।

वाक्य - विन्यास:

Import module

या उपयोग करके

from module import *

कोड का परीक्षण करने के लिए उपयोग किया जाने वाला फ़ोल्डर संरचना निम्नानुसार है:

modtest/test.pydisplay.py

Test.py के अंदर कोड विवरण निम्नलिखित हैं

my_name = "Guru99"my_address = "Mumbai"defdisplay_message():return "Welcome to Guru99 Tutorials!"def display_message1():return "All about Python!"

आयात मॉड्यूल का उपयोग करना

मॉड्यूल के अंदर चर और कार्यों को संदर्भित करने के लिए सिर्फ आयात मॉड्यूल नाम का उपयोग करना, इसे मॉड्यूल नाम के साथ उपसर्ग करना होगा।

उदाहरण

फ़ाइल नाम: display.py

Import testprint(test.display_message())print(test.display_message1())print(test.my_name)print(test.my_address)

मॉड्यूल नाम परीक्षण मॉड्यूल परीक्षण के अंदर फ़ंक्शन और चर को संदर्भित करने के लिए उपयोग किया जाता है।

आउटपुट:

Welcome to Guru99 Tutorials!All about Python!Guru99Mumbai

आयात का उपयोग *

आइए हम आयात * का उपयोग करके एक उदाहरण देखें । आयात * का उपयोग करते हुए , फ़ंक्शन और चर सीधे पहुंच योग्य हैं, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:

from test import *print(display_message())print(display_message1())print(my_name)print(my_address)

आउटपुट:

Welcome to Guru99 Tutorials!All about Python!Guru99Mumbai

दिर () फ़ंक्शन

दिर () अजगर में एक अंतर्निहित कार्य है। डीआईआर () दिए गए ऑब्जेक्ट के अंतर्निहित गुणों सहित सभी गुणों और विधियों को वापस करता है।

इसलिए जब मॉड्यूल पर डीआईआर () का उपयोग किया जाता है, तो यह आपको चर, फ़ंक्शन प्रदान करेगा जो मॉड्यूल के अंदर मौजूद हैं।

यहाँ एक मॉड्यूल पर dir () का एक कार्यशील उदाहरण दिया गया है। हमारे पास Car.py नामक एक क्लास है, आइए हम कार आयात करें और आउटपुट देखने के लिए dir () को असाइन करें।

कोड का परीक्षण करने के लिए फ़ोल्डर संरचना निम्नानुसार होगी:

test prop/Car.pytest.py

फ़ाइल नाम: Car.py

class Car:brand_name = "BMW"model = "Z4"manu_year = "2020"def __init__(self, brand_name, model, manu_year):self.brand_name = brand_nameself.model = modelself.manu_year = manu_yeardef car_details(self):print("Car brand is ", self.brand_name)print("Car model is ", self.model)print("Car manufacture year is ", self.manu_year)def get_Car_brand(self):print("Car brand is ", self.brand_name)def get_Car_model(self):print("Car model is ", self.model)

फ़ाइल नाम: test.py

import Carclass_contents = dir(Car)print(class_contents)

आउटपुट हमें क्लास का नाम देता है और Car.py में परिभाषित सभी फ़ंक्शन।

आप पायथन में उपलब्ध अंतर्निहित मॉड्यूल पर डीआईआर () का उपयोग करने का भी प्रयास कर सकते हैं। आइए हम जैसन मॉड्यूल पर भी ऐसा ही प्रयास करें जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है। यह json मॉड्यूल में उपलब्ध सभी गुणों और विधियों को प्रदर्शित करेगा ।

Import jsonjson_details = dir(json)print(json_details)

आउटपुट:

['JSONDecodeError', 'JSONDecoder', 'JSONEncoder', '__all__', '__author__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__version__', '_default_decoder', '_default_encoder', 'codecs', 'decoder', 'detect_encoding', 'dump', 'dumps', 'encoder', 'load', 'loads', 'scanner']

संकुल

एक पैकेज एक निर्देशिका है जिसके अंदर सभी मॉड्यूल परिभाषित हैं। पायथन इंटरप्रेटर को एक पैकेज के रूप में मानने के लिए, आपकी निर्देशिका में theit.pyfile होना चाहिए। Init.py पैकेज के रूप में निर्देशिका बनाता है। यहां पैकेज का लेआउट है जिस पर हम काम करने जा रहे हैं।

पैकेज का नाम मेरा पैकेज है । पैकेज के साथ काम करना शुरू करने के लिए, पैकेज नामक एक निर्देशिका बनाएं /। निर्देशिका के अंदर, __init__.py नामक एक खाली फ़ाइल बनाएँ। स्क्रीनशॉट में दिखाए अनुसार 3 और फाइल बनाएं मॉड्यूल 1 थ्रू, माड्यूल 2 आरडीओ, और माड्यू 3 थ्रीडी। यहाँ मॉड्यूल १ थ्री डी, माड्यूल २ ओडोम और माड्यूल ३ थ्री डी का विवरण दिया गया है

मॉड्यूल

def mod1_func1():print("Welcome to Module1 function1")def mod1_func2():print("Welcome to Module1 function2")def mod1_func3():print("Welcome to Module1 function3")

mod2.py

def mod2_func1():print("Welcome to Module2 function1")def mod2_func2():print("Welcome to Module2 function2")def mod2_func3():print("Welcome to Module2 function3")

mod3.py

def mod3_func1():print("Welcome to Module3 function1")def mod3_func2():print("Welcome to Module3 function2")def mod3_func3():print("Welcome to Module3 function3")

पैकेज इस्तेमाल के लिए तैयार है। अब नीचे दिखाए गए अनुसार अपनी किसी भी फ़ाइल के अंदर पैकेज को कॉल करें: test.py:

यहां, mypackage.module1 आयात किया गया है और mod1 के रूप में एक अन्य नाम दिया गया है इसी तरह, आप मेरे पैकेज से अन्य मॉड्यूल मॉड्यूल २ २०५ और मॉड्यूल ३ २०५ का उपयोग कर सकते हैं।

import mypackage.module1 as mod1print(mod1.mod1_func1())print(mod1.mod1_func2())print(mod1.mod1_func2())

आउटपुट:

Welcome to Module1 function1NoneWelcome to Module1 function2NoneWelcome to Module1 function2None

हमने सिर्फ एक साधारण मॉड्यूल के साथ पैकेज का प्रदर्शन किया है, जिसके अंदर फ़ंक्शन हैं। अपनी परियोजना के अनुसार, आप उप-पैकेज के साथ पैकेज भी कर सकते हैं। उप-फ़ोल्डर / परिभाषित मॉड्यूल वर्गों के साथ।

पायथन मॉड्यूल खोज पथ

निष्पादन के दौरान, जब अजगर आयात मॉड्यूल के नाम पर आता है , तो दुभाषिया मॉड्यूल का पता लगाने की कोशिश करता है। यह बिल्ट-इन मॉड्यूल सूची में मॉड्यूल को खोजता है। बाद में, निर्देशिका ने sys.path के अंदर परिभाषित किया।

योग करने के लिए, दुभाषिया मॉड्यूल खोजने के लिए निम्न खोज करता है:

  1. अपनी वर्तमान निर्देशिका में।
  2. बिल्ड-इन मॉड्यूल सूची में
  3. Sys.path निर्देशिका के अंदर

आप sys.path का विवरण sys मॉड्यूल आयात करके प्राप्त कर सकते हैं और sys.path प्रिंट कर सकते हैं। यह आपको नीचे दी गई निर्देशिका की सूची देगा:

importsysprint(sys.path)

आउटपुट:

['Python Latest\\task2', 'Users\\AppData\\Local\\Programs\\Python\\Python37\\python37.zip', 'Users\\AppData\\Local\\Programs\\Python\\Python37\\DLLs']

आप अपनी आवश्यकताओं के अनुसार पथ को संशोधित कर सकते हैं और निर्देशिका रख सकते हैं।

आयात में मॉड्यूल उपनाम का उपयोग करना

आप मॉड्यूल नाम को भी उपनाम रूप देकर इसे छोटे रूप में परिवर्तित कर सकते हैं। कीवर्ड का उपयोग करके उपनाम किया जा सकता है।

वाक्य - विन्यास:

import filename as alias name

कोड का परीक्षण करने के लिए फ़ोल्डर संरचना निम्नानुसार होगी:

Mod test/test.pydisplay.py

निम्नलिखित परीक्षा के अंदर कोड है

my_name = "Guru99"my_address = "Mumbai"def display_message():return "Welcome to Guru99 Tutorials!"def display_message1():return "All about Python!"

अब display.py में test.py के लिए एक उपनाम का उपयोग करेगा

Import test as tprint(t.display_message())print(t.display_message1())print(t.my_name)print(t.my_address)

परीक्षण मॉड्यूल के लिए उपयोग किया जाने वाला उपनाम टी है। इसलिए test.py से फ़ंक्शन और चर को alias t का उपयोग करके संदर्भित किया जा सकता है।

आउटपुट:

Welcome to Guru99 Tutorials!All about Python!Guru99Mumbai

अजगर में निरपेक्ष और सापेक्ष आयात

अब आप जानते हैं कि किसी फ़ाइल को किसी अन्य फ़ाइल के अंदर मॉड्यूल के रूप में कैसे आयात किया जाए। आइए अब देखें कि फोल्डर में उपलब्ध फाइलों को कैसे प्रबंधित करें। फ़ोल्डर्स में फ़ाइलों को पूर्ण या सापेक्ष आयात का उपयोग करके या तो आयात किया जा सकता है।

अपने प्रोजेक्ट फ़ोल्डर की संरचना पर विचार करें, जैसा कि नीचे दिखाया गया है:

रूट फ़ोल्डर मेरी परियोजना है /। इसमें दो सबफोल्डर्स पैकेज 1 और पैकेज 2 हैं।

फ़ोल्डर पैकेज 1 में दो मॉड्यूल, मॉड्यूल 1 थ्रीडी और माड्यूल 2 बी 2 डी हैं।

फ़ोल्डर पैकेज 2 में एक वर्ग myclass.py, एक उप-पैकेज subpkg मॉड्यूल3.py और अंतिम मॉड्यूल4.py है।

  • मॉड्यूल 1 थिंकपैड में, एक functioncalledmyfunc1 है।
  • मॉड्यूल 2 थिंकपैड में, एक functioncalledmyfunc2 है।
  • Mod33.py में, एक functioncalledmyfunc3 है।
  • Mod44.py में, एक functioncalledmyfunc4 है।

निरपेक्ष आयात का उपयोग करना

निरपेक्ष आयात के लिए, आपको प्रोजेक्ट रूट फ़ोल्डर से अपने मॉड्यूल के पूरे पथ को जोड़ने की आवश्यकता है।

आइए अब देखते हैं कि प्रत्येक मॉड्यूल में मौजूद फ़ंक्शन को संदर्भित करने के लिए पूर्ण आयात का उपयोग कैसे करें।

Functionmyfunc1 के साथ काम करने के लिए, आपको निम्नानुसार आयात करना होगा:

from package1.module1 import myfunc1orfrom package1 import module1module1.myfunc1()

फ़ंक्शन myfunc3 के साथ काम करने के लिए आपको निम्नानुसार आयात करना होगा:

from package1.subpkg.module3 import myfunc3orfrom package1.subpkg import module3module3.myfunc3()

पूर्ण आयात का उपयोग करने के फायदे और नुकसान

यहां पूर्ण आयात का उपयोग करने के फायदे दिए गए हैं:

  • कोड जांच के लिए मॉड्यूल का पता लगाना आसान हो जाता है।
  • प्रयोग करने में आसान और बहुत सीधा।
  • यदि परियोजना को एक अलग रास्ते पर ले जाया जाता है, तब भी आयात समान रहेगा।

पूर्ण आयात का उपयोग करने के नुकसान

यहाँ, पूर्ण आयात का उपयोग करने के नुकसान हैं:

नुकसान:

  • आयात पथ बहुत लंबे समय तक प्राप्त कर सकता है, मॉड्यूल नेस्टेड हैं, और यदि मॉड्यूल का नाम लंबा है।

रिश्तेदार आयात का उपयोग करना

नीचे वर्णित समान फ़ोल्डर संरचना पर विचार करते हुए, हम देखेंगे कि रिश्तेदार आयात का उपयोग करके समान आयात कैसे करें।

सापेक्ष आयात में, आयात किया जाने वाला मॉड्यूल वर्तमान स्थान के सापेक्ष होता है, वह स्थान जहां आयात विवरण मौजूद होता है।

वाक्य - विन्यास:

सापेक्ष आयात में, आपको मॉड्यूल नाम से पहले एक पीरियड (।) जोड़ने की आवश्यकता होती है जब से आयात करते हैं

मॉड्यूल नाम से पहले यह 2 अवधि (…) होगा यदि मॉड्यूल वर्तमान स्थान से एक स्तर ऊपर है।

ऊपर वर्णित फ़ोल्डर संरचना की आकृति का उल्लेख करते हुए, हमारे पास उनके फ़ंक्शन के साथ निम्नलिखित मॉड्यूल हैं, जिन्हें हमें संदर्भित करने की आवश्यकता है।

  • मॉड्यूल 1 थिंकपैड में, एक functioncalledmyfunc1 है।
  • मॉड्यूल 2 थिंकपैड में, एक functioncalledmyfunc2 है।
  • Mod33.py में, एक functioncalledmyfunc3 है।
  • Mod44.py में, एक functioncalledmyfunc4 है।

Functionmyfunc1 के साथ काम करने के लिए आपको निम्नानुसार आयात करना होगा:

from .module1 import myfunc1

फ़ंक्शन myfunc3 के साथ काम करने के लिए, आपको निम्नानुसार आयात करना होगा:

from .subpkg.module3 import myfunc3

सापेक्ष आयात के लाभ

लाभ:

  • रिश्तेदार आयात के साथ काम करना आसान है।
  • वर्तमान स्थान से, पूर्ण आयात की तुलना में आयात को छोटा किया जा सकता है।

रिश्तेदार आयात का नुकसान

नुकसान:

  • रिश्तेदार आयात का उपयोग करके, यह पता लगाना मुश्किल है कि कोड कहाँ रहता है

सारांश:

  • पायथन में आयात आपको कोड, अर्थात .functions / ऑब्जेक्ट्स को संदर्भित करने में मदद करता है जो किसी अन्य फ़ाइल में लिखे गए हैं। इसका उपयोग अजगर पुस्तकालयों / पैकेजों को आयात करने के लिए भी किया जाता है जो कि पाइप (अजगर पैकेज मैनेजर) का उपयोग करके स्थापित किए जाते हैं, और आपको अपने कोड में उपयोग करने की आवश्यकता होती है।
  • आयात की कार्यक्षमता अन्य भाषाओं में टाइपस्क्रिप्ट, जावास्क्रिप्ट, जावा, रूबी आदि में उपलब्ध है।
  • एक मॉड्यूल अजगर है जो फ़ाइल के अंदर लिखा कोड है, उदाहरण के लिए (test.py)। आपकी फ़ाइल के अंदर, आपके पास आपके चर, कार्य या आपकी कक्षा परिभाषित हो सकती है। संपूर्ण फ़ाइल एक मॉड्यूल बन जाती है और कोड को संदर्भित करने के लिए किसी अन्य फ़ाइल के अंदर आयात की जा सकती है।
  • मॉड्यूल कार्यक्षमता के साथ, आप एक फ़ाइल के अंदर सब कुछ लिखने के बजाय अपने कोड को विभिन्न फ़ाइलों में तोड़ सकते हैं। बाद में, आयात का उपयोग करके, आप अपनी ज़रूरत के अनुसार फ़ाइल के अंदर कोड का उल्लेख कर सकते हैं।
  • पायथन में इसके अंतर्निहित मॉड्यूल होते हैं, और एक अजगर पैकेज मैनेजर (पाइप) का उपयोग करके स्थापित बाहरी लाइब्रेरी / पैकेज भी होते हैं, जैसे, पांडा, न्यूमपी, आदि को मॉड्यूल के रूप में संदर्भित किया जाता है।
  • आप मॉड्यूल का केवल एक छोटा सा हिस्सा आयात कर सकते हैं, अर्थात, केवल पूर्ण कोड आयात करने के बजाय मॉड्यूल से केवल आवश्यक फ़ंक्शन और चर नाम।
  • आप मॉड्यूल नाम को भी उपनाम रूप देकर इसे छोटे रूप में परिवर्तित कर सकते हैं। कीवर्ड का उपयोग करके उपनाम किया जा सकता है।
  • एक पैकेज एक निर्देशिका है जिसके अंदर सभी मॉड्यूल परिभाषित हैं। पायथन इंटरप्रेटर को एक पैकेज के रूप में मानने के लिए, आपकी निर्देशिका में __init.pyfile होना चाहिए। Init.py पैकेज के रूप में निर्देशिका बनाता है। यहां पैकेज का लेआउट है जिस पर हम काम करने जा रहे हैं।
  • निष्पादन के दौरान, जब अजगर आयात मॉड्यूल के नाम पर आता है , तो दुभाषिया मॉड्यूल का पता लगाने की कोशिश करता है। यह बिल्ट-इन मॉड्यूल सूची में मॉड्यूल को खोजता है। बाद में, निर्देशिका ने sys.path के अंदर परिभाषित किया।
  • निरपेक्ष आयात के लिए, आपको प्रोजेक्ट रूट फ़ोल्डर से अपने मॉड्यूल के पूरे पथ को जोड़ने की आवश्यकता है।
  • सापेक्ष आयात में, आयात किया जाने वाला मॉड्यूल वर्तमान स्थान के सापेक्ष होता है, वह स्थान जहां आयात विवरण मौजूद होता है।