Pythonда импорт кириш
Pythonда фақат re
(регуляр ифодалар билан ишлаш учун) каби
стандарт модулларнигина эмас, балки фойдаланувчи
файлларидан янги модуллар яратиш ҳам мумкин.
Фарз қилайлик, бизда lib.py файли мавжуд бўлиб,
у бизнинг иш файлимиз test.py билан бир каталогда жойлашган:
- lib.py
- test.py
Келинг, унда консольга қуйвоқ белгини чиқарувчи функция яратайлик:
def func():
print('!')
Энди test.py файлига ўтиб, ушбу функцияни
импорт қиламиз. Файлнинг юқори қаторида import
буйругини ёзамиз, сўнгра керакли файл (модул) номини
кўрсатамиз. Икки файл ҳам бир каталода ётгани учун,
import дан кейин фақат модул номини унинг
кенгайтмасисиз кўрсатиш кифоя:
import lib
Сўнгра импорт қилинган функцияни чақирамиз. Бунинг
учун модул номидан кейин нуқта орқали func
функция номини кўрсатамиз:
lib.func()
Коднинг ишлаш натижаси:
'!'
Модулни импорт қилганда, иш файлида нафақат функциялар, балки унинг бошқа барча мазмуни, масалан, ўзгарувчилар ҳам дастур қилувчи бўлади.
Модулни импорт қилганимиздан сўнг, иш каталогида
автоматик равишда __pycache__ хизмат кўрсатувчи
паппаси пайдо бўлди. Эътиборингизни қаратингки,
Pythonдаги барча хизмат кўрсатувчи файл ва паппаларнинг
номлари қоғоз остига олинган иккита pastki chiziqchaдан иборат:
- /__pycache__/
- lib.py
- test.py
Баъзан бошқа паппада жойлашган модулни импорт қилиш
талаб этилиши мумкин, масалан, /dir/lib.py йўлида:
- /__pycache__/
- /dir/
- lib.py
- test.py
У ҳолда, импорт қилар пайтида паппа ва файл номи нуқта орқали кўрсатилади ва импорт қилинган функция ҳам шу тарзда ёзилади:
import dir.lib
dir.lib.func()
file.py файлини яратинг. Унда консольга
сон чиқарувчи функция яратинг. Ушбу функцияни
ўз иш кодингиз файлига импорт қилинг.
test1.file1.py файлида бирон хабар чиқарувчи
функция яратинг. Уни ўз иш файлингизга импорт қилинг.