Функции — в отдельный файл, один раз и навсегда. 10 класс, углублённый уровень — занятие тринадцатое.
Уроки 25–26 поурочного плана: «Модульный принцип построения программ» и
резервное время. В парах 10 и 11 вы написали ,
,
,
— и в каждой
новой программе писали их заново. Сегодня — последний раз.
нужна в задании про простые числа, в задании про
счастливые даты и в домашней работе. Три программы — три одинаковые копии.
В одной копии нашли ошибку: 1 объявлена простой. Исправили. А две другие так и врут.
Выход — держать функцию в одном месте и подключать её туда, где она нужна.
файл mytools.py
файл main.py — рядом, в той же папке
Имя модуля — имя файла без :
. Python ищет файл сначала в папке программы, потом в
своей библиотеке.
| Подключение | Как звать функцию | Что появилось в программе |
|---|---|---|
| одно имя | ||
| имя | ||
| короткое имя | ||
| все имена модуля |
Вы так уже делали: ,
,
. Библиотека Python —
это тоже модули, только написали их другие люди.
Модуль хочется проверить: запустить сам файл и посмотреть, что функции
отвечают верно. Но эти не должны срабатывать, когда модуль
подключает чужая программа.
— имя, под которым работает файл. У
запущенного файла это
, у подключённого —
имя модуля,
.
файл calc.py
файл main.py
На экране 6, а не 101. Функция ищет там, где
написана, — в своём модуле.
создала другую переменную, в
программе.
Если бы в была строка
—
сколько раз она бы сработала?
Один. Первый выполняет файл и
запоминает модуль. Следующие — берут уже загруженный, файл не перечитывают.
файл datetools.py
пользуется
из того же модуля —
программе про это знать не нужно. Ей хватит
.
Модуль может и сам подключать модули:
внутри
. Тогда у
появляется имя
—
та же функция.
Отметка: три задания — «5», два — «4», одно — «3». Все пять файлов — в одну новую папку.
Сначала тренажёр, потом модули, потом три программы.
Домашнее задание — на странице «Домашнее задание»: шесть типов задач на чтение программ из нескольких файлов, Python дома не нужен. Исправленное после подсказки в отметку не идёт — вместо него новая задача, добирать можно до пятёрки. В начале следующей пары — проверочная по этим же типам.