Десятое занятие углублённого курса: def, параметры и аргументы, return, процедура и функция, откуда берётся None, локальные имена, ранний return внутри цикла, функция-признак, функция из функций и строка документации — уроки 19–20 плана
def имя(параметры): — тело — return значение. def только запоминает функцию, считает она при вызове. Аргументы встают в параметры по порядку: f(7, 2) в def f(a, b) даёт a = 7, b = 2.
Процедура делает (печатает), функция считает и отдаёт через return. Без return функция отдаёт None: print(show(4)) напечатает то, что печатает show, а потом None. К None нельзя прибавить число.
Параметры и переменные, созданные внутри, живут только внутри функции. В параметр приходит копия числа: внешняя переменная не меняется. Нужно новое значение — m = inc(m).
Сразу выходит из функции, даже из середины цикла. «Нашёл — return» внутри цикла, «не нашёл — return» после цикла. Строки после return не выполняются.
Признак возвращает True или False и стоит прямо в if: if is_prime(x):. Одна функция может звать другую: nok(a, b) = a // nod(a, b) * b.
Сначала все def, потом основная программа. Вызов выше def — NameError; не то число аргументов — TypeError. """Строка документации""" первой строкой функции — её показывает help().
Десятое занятие углублённого курса: def, параметры и аргументы, return, процедура и функция, откуда берётся None, локальные имена, ранний return внутри цикла, функция-признак, функция из функций и строка документации — уроки 19–20 плана
def имя(параметры): — тело — return значение. def только запоминает функцию, считает она при вызове. Аргументы встают в параметры по порядку: f(7, 2) в def f(a, b) даёт a = 7, b = 2.
Процедура делает (печатает), функция считает и отдаёт через return. Без return функция отдаёт None: print(show(4)) напечатает то, что печатает show, а потом None. К None нельзя прибавить число.
Параметры и переменные, созданные внутри, живут только внутри функции. В параметр приходит копия числа: внешняя переменная не меняется. Нужно новое значение — m = inc(m).
Сразу выходит из функции, даже из середины цикла. «Нашёл — return» внутри цикла, «не нашёл — return» после цикла. Строки после return не выполняются.
Признак возвращает True или False и стоит прямо в if: if is_prime(x):. Одна функция может звать другую: nok(a, b) = a // nod(a, b) * b.
Сначала все def, потом основная программа. Вызов выше def — NameError; не то число аргументов — TypeError. """Строка документации""" первой строкой функции — её показывает help().