Краткое описание
В этой статье вы узнаете что такое функции Python, что такое параметры по умолчанию.
Функция — это именованный блок кода, который выполняет задание или возвращает значение.
Зачем вам нужны функции
Иногда вам нужно выполнить задачу несколько раз в программе. И вы не хотите копировать код одной и той же задачи несколько раз.
Для этого вы помещаете код в функцию и используете эту функцию для выполнения задачи, когда вам это нужно.
Например, всякий раз, когда вы хотите отобразить значение на экране, вам нужно вызвать функцию print(). За кулисами Python запускает код внутри print() функции для отображения значения на экране.
На практике функции используются для разделения большой программы на более мелкие и более управляемые части. Эти функции упростят разработку, чтение, тестирование и поддержку вашей программы. Функция print() является одной из многих других встроенных функций. Это означает, что эти функции доступны повсюду в программе.
В этом уроке вы узнаете, как определять пользовательские функции Python.
Определение функции Python
Вот простая функция, которая выводит строку в консоль:
В этом примере показана простейшая структура функции. Функция состоит из двух основных частей: определения функции и тела.
1) Определение функции
Определение функции начинается с ключевого слова def и имени функции (в наем случае - greet).
Если для работы функции требуется некоторая информация для выполнения своей работы, вам необходимо указать ее в круглых скобках ( ). Функция greet в этом примере не нуждается в какой-либо информации, поэтому ее круглые скобки пусты.
Определение функции всегда заканчивается двоеточием ( : ).
2) Тело функции
Все строки с отступом, следующие за определением функции, составляют тело функции.
Текстовая строка, заключенная в тройные кавычки, называется строкой документации. Она описывает, что делает функция. Python использует строку документации для автоматического создания документации для функции.
print('Hi') — единственная строка фактического кода в теле функции. Функция greet() выполняет одну задачу: print('Hi').
Вызов функции
Если вы хотите использовать функцию, вам нужно ее вызвать. Вызов функции инструктирует Python выполнить код внутри функции.
Чтобы вызвать функцию, вы пишете ее имя, а затем в круглых скобках информацию, необходимую для этой функции.
В следующем примере вызывается функция greet(). Поскольку greet() не требуется никакой информации, вам необходимо указать пустые круглые скобки следующим образом:
Если вы запустите программу, на экране отобразится приветствие:
Передача информации в функции
Предположим, вы хотите приветствовать пользователей по имени. Для этого вам необходимо указать имя в скобках определения функции следующим образом:
name называется параметром функции.
Когда вы добавляете параметр в определение функции, вы можете использовать его как переменную внутри тела функции:
И вы можете получить доступ к параметру name только внутри тела функции greet(), а не снаружи.
Когда вы вызываете функцию с параметром, вам необходимо передать его при вызове. Например:
Вывод в консоль:
Значение, которое вы передаете в функцию, называется аргументом. В данном примере 'John' - это аргумент.
Также вы можете вызвать функцию, передав в нее переменную:
В этом примере переменная first_name также является аргументом функции greet().
Параметры и аргументы
Иногда параметры и аргументы используются как взаимозаменяемые. Важно различать параметры и аргументы функции.
Параметр — это часть информации, которая необходима функции. И вы указываете параметр в определении функции. Например, у greet() есть параметр с именем name.
Аргумент — это фрагмент данных, который вы передаете в функцию. Например, текстовая строка 'John' или переменная jane является аргументом функции.
Возврат значения
Функция может выполнять задачу, подобную функции greet(). Или она может вернуть значение. Пременная, возвращаемое функцией, называется возвращаемым значением .
Чтобы вернуть значение из функции, вы используете оператор return внутри тела функции.
В следующем примере функция greet() изменяется для возврата приветствия вместо его отображения на экране:
Когда вы вызываете функцию greet(), вы можете присвоить возвращаемое значение переменной:
И ведем это на экран:
Новая функция greet() лучше старой, потому что она не зависит от функции print().
Позже вы сможете повторно использовать greet() в других приложениях. Например, вы можете использовать его в веб-приложении, чтобы приветствовать пользователей после входа в систему.
Функции Python с несколькими параметрами
Функция может иметь не иметь параметров, а может иметь один или несколько.
В следующем примере определяется функция sum(), которая вычисляет сумму двух чисел:
Вывод:
В этом примере sum() имеет два параметра a и b и возвращает их сумму.
Если функция имеет несколько параметров, для их разделения необходимо использовать запятую.
Когда вы вызываете функцию, вам необходимо передать все аргументы. Если вы передадите функции больше или меньше аргументов, вы получите ошибку.
Параметры по умолчанию в функциях
При определении функции вы можете указать значение по умолчанию для каждого параметра.
Чтобы указать значения по умолчанию для параметров, используйте следующий синтаксис:
В этом синтаксисе вы указываете значения по умолчанию ( value2, value3, …) для каждого параметра с помощью оператора присваивания ( = ).
Когда вы вызываете функцию и передаете аргумент параметру, имеющему значение по умолчанию, функция будет использовать этот аргумент вместо значения по умолчанию.
Однако если вы не передадите аргумент, функция будет использовать значение по умолчанию.
Чтобы использовать параметры по умолчанию, вам необходимо разместить параметры со значениями по умолчанию после других параметров. В противном случае вы получите синтаксическую ошибку.
Например, вы не можете сделать что-то вроде этого:
Это вызывает синтаксическую ошибку.
Пример параметров по умолчанию в функциях
В следующем примере определяется функция greet(), возвращающая приветственное сообщение:
Функция greet() имеет два параметра: name и message. Параметр message имеет значение по умолчанию 'Hi'.
Следующий код вызывает greet() и передает два аргумента:
Вывод:
Поскольку мы передаем второй аргумент функции greet(), функция использует аргумент вместо значения по умолчанию.
В следующем примере функция вызывается greet() без передачи второго аргумента:
Вывод:
В этом случае greet( ) использует значение параметра по умолчанию message.
Несколько параметров по умолчанию
Переопределим функцию greet() с двумя параметрами, имеющими значения по умолчанию:
В этом примере вы можете вызвать функцию greet() без передачи каких-либо параметров:
Вывод:
Предположим, вы хотите, чтобы greet() возвращала приветствие типа Hello there. Вы можете получить следующий вызов функции:
К сожалению, он возвращает неожиданное значение:
Потому что когда вы передаете аргумент 'Hello', функция greet() рассматривает его как первый аргумент, а не как второй.
Чтобы решить эту проблему, вам нужно вызвать функцию greet(), используя ключевое слово, например:
Вывод:
.
❤️ Если вам понравилась статья, ставьте лайк и подписывайтесь на мой канал "Заходи в Ай-Ти".
👍 Если у вас остались вопросы или есть интересные темы, которые вы хотите, чтобы я разобрал, то пишите в комментариях. Ваше мнение очень важно для меня!
.
#python документация функций #функции в python #функции в языке python #функции языка программирования python #функции языка программирования python #параметр функции python #вызов функции python #python выполнить функцию