Увод у імпарт у 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 маюць падвойнае ніжняе
падкрэсліванне:
- /__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 стварыце
функцыю, якая выводзіць якое-небудзь паведамленне.
Імпартуйце яе ў свой рабочы файл.