Шпаргалка: функции Python
Разберём «Шпаргалка: функции Python» по шагам: короткая теория, наглядный пример, разбор типового задания и ловушки. В конце — что запомнить и где закрепить.
Что такое функция в Python
Когда программа разрастается, одинаковые действия начинают повторяться, а ошибки прячутся в длинном коде. Функция помогает собрать отдельную задачу в понятный блок: один раз описать действия, а затем вызывать их сколько угодно. В этой шпаргалке разберём, как объявлять функции Python, передавать им данные, получать результат и избегать типичных ошибок на уроках и экзамене.
Функция создаётся с помощью ключевого слова def. После него записывают имя функции и круглые скобки. Тело функции выделяется отступом, обычно четырьмя пробелами. Если функция должна вернуть значение, используют return.
def приветствие():
print("Привет!")
приветствие()
В примере вызов приветствие() запускает команды внутри функции. Важно: пока функция только объявлена, её тело не выполняется.
Имена функций обычно пишут маленькими буквами, а слова разделяют подчёркиванием: найти_сумму, проверить_число. Хорошее имя подсказывает, что делает функция, и облегчает чтение программы.
Параметры и аргументы
Функция становится полезнее, если умеет работать с разными данными. Для этого в скобках указывают параметры. Параметр получает значение при вызове функции. Само переданное значение называют аргументом.
def удвоить(число):
return число × 2
результат = удвоить(7)
print(результат) # 14
Здесь число — параметр, а 7 — аргумент. При каждом новом вызове можно передавать другое значение.
print(удвоить(3)) # 6
print(удвоить(10)) # 20
Параметров может быть несколько. Их записывают через запятую, а при вызове передают значения в том же порядке.
def площадь(длина, ширина):
return длина × ширина
print(площадь(5, 4)) # 20
Перед написанием функции сформулируй её задачу одним предложением. Если не можешь объяснить, что функция получает и что возвращает, код ещё стоит упростить.
return, print и область видимости
Команды print и return выполняют разные роли. print выводит данные на экран, а return передаёт результат туда, где функцию вызвали. Возвращённое значение можно сохранить в переменной, сравнить или использовать в другом вычислении.
def куб(число):
return число × число × число
а = куб(2)
б = куб(а)
print(б) # 512
После выполнения return функция сразу заканчивает работу. Команды ниже него не выполнятся. Если return не написать, функция возвращает специальное значение None.
Переменная, созданная внутри функции, обычно локальная: она существует только во время работы этой функции. Переменная снаружи называется глобальной. Для школьных задач безопаснее передавать нужные данные параметрами и возвращать результат, а не менять глобальные переменные.
def знак(число):
if число > 0:
return "положительное"
return "неположительное"
print(знак(-4))
Функция может вернуть несколько значений: Python соберёт их в кортеж. Но в базовых задачах чаще возвращают одно понятное значение.
Значения по умолчанию и встроенные функции
Параметру можно заранее задать значение по умолчанию. Тогда аргумент разрешается не передавать. Это удобно, если один вариант используется чаще других.
def привет(имя, обращение="ученик"):
return обращение + ", " + имя + "!"
print(привет("Маша"))
print(привет("Илья", "коллега"))
В первом вызове используется значение ученик, а во втором оно заменяется на коллега. Параметры без значений по умолчанию обычно указывают перед параметрами со значениями по умолчанию.
В Python уже есть встроенные функции: len находит длину, abs возвращает модуль, max и min ищут наибольшее и наименьшее значение, round округляет число, int и float меняют тип данных.
| Функция | Назначение | Пример |
|---|---|---|
| len | длина объекта | len("код") → 3 |
| abs | модуль числа | abs(-8) → 8 |
| max | максимум | max(2, 9) → 9 |
| round | округление | round(3.6) → 4 |
Если хочешь закрепить синтаксис на коротких задачах, можно открыть бесплатную практику в личном кабинете и сразу проверить себя.
Разобранный пример и типичные ошибки
Задача: написать функцию, которая получает число и возвращает сумму всех целых чисел от 1 до него. Пусть аргумент равен 4. Сначала создаём накопитель суммы, затем перебираем числа от 1 до 4 включительно.
def сумма_до(n):
сумма = 0
for число in range(1, n + 1):
сумма = сумма + число
return сумма
ответ = сумма_до(4)
print(ответ) # 10
Ход вычислений:
сумма = 0 → 1 → 3 → 6 → 10
return 10 → ответ получает значение 10
Частая ошибка — написать range(1, n): последнее число не войдёт, поэтому для 4 получится сумма только 1 + 2 + 3. Ещё одна ошибка — перепутать имя параметра и переменной: внутри функции нужно использовать одинаковые названия.
Не ставь круглые скобки после имени функции в присваивании, если не хочешь вызвать её прямо сейчас: а = сумма_до сохраняет функцию, а а = сумма_до(4) сохраняет результат.
Проверяй функцию на граничных случаях: 1, 0, отрицательном числе, пустой строке или списке. Так быстрее обнаруживаются неверные условия и границы цикла.
Что запомнить
Функция объявляется через def, получает данные через параметры, запускается вызовом и может вернуть результат через return. Отступы обязательны: они показывают тело функции. print только выводит информацию, а return позволяет использовать результат дальше. Параметр со значением по умолчанию можно не указывать при вызове.
Алгоритм решения обычно такой: назови задачу функции, определи входные данные, выбери результат, напиши тело с отступом, проверь обычный и граничный случаи. Если готовишься к ОГЭ или ЕГЭ, полезно отдельно потренировать циклы, условия и работу со списками внутри функций. Для следующего шага зарегистрируйся и реши 5 заданий бесплатно в личном кабинете.
Запомни главное: хорошая функция делает одну понятную работу. Разделяй большую программу на небольшие блоки — так её легче читать, тестировать и исправлять.
Что такое функция в Python?
Это именованный блок команд, который можно вызывать многократно. Функция может получать параметры и возвращать результат.
Чем отличаются print и return?
print выводит данные на экран, а return возвращает значение из функции. Возвращённый результат можно сохранить в переменной или использовать в вычислении.
Как закрепить тему после разбора?
Реши несколько коротких задач: создай функцию для суммы, максимума, проверки чётности и обработки списка. После этого сравни результат с примерами и проверь граничные значения. Можно продолжить в личном кабинете.
Почему возникает ошибка отступов?
Python использует отступы для обозначения тела функции, условия или цикла. Команды одного блока должны начинаться на одинаковом расстоянии от края строки.
Закрепить тему на практике
Теория без практики забывается за неделю. В личном кабинете Просто Урок — задания по этой теме с проверкой каждого шага. Регистрация бесплатная.