Прежде чем читать эту статью, убедитесь, что вы прочитали все мои предыдущие статьи из серии Zero to Hero in Python за 30 дней: https://medium.com/python-in-plain-english / zero-to-hero-in-python-in-30-days-day-7-take-input-from-the-user-1ec7c6d75929

Каноническая фраза «Python - отличный первый язык» гласит: «Python - отличный последний язык!» - Ной Спурриер

Итак, Простым английским, что такое функция?

работать или действовать надлежащим или определенным образом. - Google

Приведенное выше определение не так убедительно. Если вы знаете хотя бы некоторые основы алгебры, вы можете знать, что функция - это отношение или выражение, включающее одну или несколько переменных и возвращающее вычисленное значение. Например, (y = ax + c)

В нашем зале программирования функция - это набор операторов, которые могут принимать или не принимать входные данные, выполнять некоторые вычисления и могут возвращать или не возвращать вычисленный результат. До сих пор мы использовали так много функций, как print(), input(), len(), type(), все это встроенные функции в Python

Преимущества использования функций:
1. Организованный код
2. Код многократного использования
3. Модульный код
4. Предотвращение избыточности - сокращает написание одних и тех же операторов снова и снова
5. Легко читать

Синтаксис для определения функции в Python:

Напишем простую функцию, чтобы поздороваться с человеком,

В приведенной выше программе мы избегаем многократных вызовов функции print, создавая нашу собственную функцию с именем greet. Мы просто передаем имя человека, которого нужно приветствовать, затем функция копирует переданное значение в свой параметр (name). Через функцию, на которую ссылаются Value, используется имя параметра.

Функция также может возвращать значение.

Давайте напишем программу для сложения двух чисел, чтобы продемонстрировать приведенное выше утверждение,

Выход,

В приведенной выше программе у нас есть функция с именем add, которая принимает два аргумента (параметра) num1 и num2 и возвращает сумму этих двух чисел. Мы также можем указать скобки для возврата, например return(num1 + num2)

Обратите внимание на то, что в приведенной выше программе имя параметра также num1, и мы также вызываем функцию через то же имя переменной. Вам не кажется, что они сталкиваются? - Нет, не из-за чего-то, что называется областью действия и пространством имен. Мы расскажем об этом в следующих статьях. А пока просто подумайте, что все, что находится внутри функции, не имеет ничего общего с ней.

Функция может принимать любое количество аргументов. function_name известен как идентификатор функции. parameters - это то, что вы передаете функции. Также может быть функция, которая не принимает аргументов, которую можно вызывать напрямую, без необходимости передавать аргументы. В определении функции есть блок операторов с отступом. Все, что делается с отступом, считается внутри функции.

Правила наименования функции такие же, как и правила наименования переменных. В python функции являются первоклассными гражданами (первоклассными объектами), т. Е. Функции могут быть переданы в качестве аргумента, они могут быть возвращены из функции, назначены переменной,… в основном все операции, которые могут быть выполнены с обычным Переменная.

Давайте посмотрим, что возвращается функция, которая ничего не возвращает,

Таким образом, мы можем наблюдать в приведенной выше программе, что функция без оператора return возвращает None, None ничего не означает, это означает пустоту. pass означает «просто идти дальше». Как только мы начнем определять функцию, нам понадобится блок с отступом, хотя функция ничего не делает, блок не может быть пустым. Следовательно, мы используем pass. Мы можем просто проигнорировать это заявление.

Функции могут быть присвоены переменной

Взгляните на программу ниже,

В приведенной выше программе мы можем обозначать greet функцию как hello. Мы можем вызвать ту же функцию, используя также два имени. Какая от этого польза? - Мы рассмотрим это в следующих статьях. На данный момент просто знайте, что функции могут быть назначены переменной, а дальнейшая функция также может быть вызвана с использованием имени переменной.

На этом мы завершаем сегодняшнюю статью. Функции - очень важное понятие в любом языке программирования. Как программист, большая часть времени тратится на написание функций. Понимание очень важно. У меня к вам ряд вопросов, попробуйте их самостоятельно. Решение (ссылки) я выложу в следующей статье. Все эти программы нужно делать с использованием концепции функций.

  1. Напишите функцию с именем sum_natural, которая принимает один аргумент num, который является положительным целым числом, функция должна возвращать сумму всех натуральных чисел до num. Например, если num равно 5, функция должна возвращать 15 (1 + 2 + 3 + 4 +5).
  2. Напишите функцию с именем check_prime, которая принимает один аргумент num, который является положительным целым числом. Функция должна возвращать True, если num простое число, False, если num не простое число.

Весь исходный код доступен для загрузки в моем репозитории GitHub: https://github.com/manthanmtg/zero-to-hero-in-python-in-30-days

Обновление:
Ссылки на все статьи:
https://drive.google.com/file/d/1eUXaMy064uCEg3z3F_oL_gF-OmBkhVIl/view?usp=sharing