Создание функций: def и параметры
Функция — именованный фрагмент кода, который можно вызывать много раз. Создаём собственные функции с помощью def и передаём в них данные через параметры.
Список тем (8 из 11)
Глава 1. Основы Python
Глава 2. Списки и строки
Глава 3. Функции и модули
Глава 4. Работа с файлами
Мы уже пользуемся готовыми функциями print(), len(), input(). Функция — это именованный фрагмент кода, который вызывают при необходимости. Вместо того чтобы повторять один и тот же код в нескольких местах, его выносят в функцию и вызывают по имени: программа становится короче, а ошибки искать легче.
Функция объявляется ключевым словом def: после строки def hello(): тело записывается со сдвигом в 4 пробела, например print("Salom!"). При объявлении функция не выполняется; она работает только тогда, когда мы вызовем её: hello(). Вызов должен стоять после объявления.
Данные в функцию передаются через параметры: def greet(name): и print("Salom,", name). Значение, которое мы передаём при вызове, называется аргументом: greet("Dilnoza"). Несколько параметров разделяются запятой: def area(a, b):. Параметру можно задать значение по умолчанию: при def greet(name="do‘st"): вызов greet() выведет «Salom, do‘st».
Переменные, созданные внутри функции, локальные: они видны только в этой функции и исчезают после её завершения. Глобальные переменные, созданные вне функции, можно читать и внутри. Давайте функциям осмысленные имена (print_table, area) и пусть каждая выполняет одну чёткую задачу.
Главное
- Функция объявляется через
defи вызывается по имени. - Параметр — имя в объявлении функции, аргумент — значение при вызове.
- Параметру можно задать значение по умолчанию.
- Переменные внутри функции локальные.
Практические задания
- Напишите функцию
star_line(n), выводящуюnзвёздочек ("*" * n); вызовите её с тремя разными аргументами. - Функция
def rectangle(a, b):должна выводить площадь прямоугольника; вызовите её дважды с разными числами. - Создайте функцию
greet(name, city="Toshkent")и вызовите её один раз с одним аргументом, другой раз — с двумя.
Вопросы для закрепления
Проверьте себя: сначала подумайте, потом откройте ответ.
1В чём разница между объявлением и вызовом функции?Показать ответСкрыть ответ
Объявление (`def`) создаёт функцию, но не выполняет её; код работает только когда функцию вызывают по имени со скобками.2Что такое локальная переменная?Показать ответСкрыть ответ
Переменная, созданная внутри функции и видимая только в ней.
Войдите на сайт
Слайды и PDF доступны только зарегистрированным пользователям: и просмотр, и скачивание. Вход бесплатный.
Войдите на сайт
Слайды и PDF доступны только зарегистрированным пользователям: и просмотр, и скачивание. Вход бесплатный.
Пройдено тем: 0 из 11
Войти и отметить