English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этой статье вы узнаете о функциях, что такое функция, синтаксис функции, состав и типы. Кроме того, вы также узнаете, как создавать функции на Python.
В Python функция - это набор связанных между собой инструкций, выполняющих определенную задачу.
Функция помогает разбить нашу программу на более мелкие модули. По мере роста нашего проекта функция делает его более организованным и легким для управления.
Кроме того, это предотвращает повторение одинакового кода, функция делает код повторно используемым.
def function_name(parameters): """docstring""" statement(s)
На экране показана функция, состоящая из следующих компонентов.
Ключевое слово def标志着函数头的开始。
Имя функции используется для уникальной идентификации функции. Имя функции следуетВ Python пишут идентификаторы的相同Правила.
Параметры, передающие значения функции. Они являются опциональными.
Точка с запятой (:)标志着函数 заголовка.
Опциональная документация (docstring), используемая для описания функции.
Одна или несколько эффективных python-утверждений, составляющих тело функции. Утверждения должны иметь одинаковый уровень отступа (обычно 4 пробела).
Опциональная команда return, используемая для возвращения значения из функции.
def greet(name): """ Это функция для приветствия Передается через параметр name Имя человека для приветствия """ print("Привет, " + name + ". Доброе утро!")
Как вызвать функцию в Python? После определения функции, мы можем вызвать ее из другой функции, программы или даже из интерпретатора Python. Для вызова функции, нам нужно просто ввести имя функции с правильными параметрами.
>>> greet('Paul') Привет, Paul. Доброе утро!
Примечание:Попробуйте запустить следующий код в Python-программе с определением функции, чтобы увидеть результат.
def greet(name): """ Это функция для приветствия Передается через параметр name Имя человека для приветствия """ print("Привет, " + name + ". Доброе утро!") greet('Paul')
Первая строка после заголовка функции называется docstring и является аббревиатурой от документации функции. Кратко описывает функцию.
Хотя это и не обязательно, документация - это хорошая практика программирования. Убедитесь, что вы записываете комментарии к вашему коду, если вы не помните время и меню ужина в эту ночь.
В примере выше, у нас есть документация в начале функции, сразу под заголовком функции. Мы обычно используем три двойные кавычки, чтобы расширить документацию на несколько строк. Эта строка может быть использована как атрибут __doc__ функции.
Например:
Попробуйте запустить следующий код в интерпретаторе Python, чтобы увидеть результат.
>>> print(greet.__doc__) Это функция для приветствия Передается через параметр name Имя человека для приветствия
Чтобы узнать больше о документации Python, пожалуйста, посетитеPython Docstrings.
Команда return используется для выхода из функции и возвращения к месту вызова функции.
return [expression_list]
Эта команда может содержать выражение, которое будет вычислено и вернет значение. Если в этой команде нет выражения или команда return herself отсутствует в функции, то функция вернет объект None.
Например:
>>> print(greet("May")) Привет, Май. Доброе утро! None
None является возвращаемым значением, потому что функция greet() напрямую выводит имя и не использует команду return.
def absolute_value(num): """Эта функция возвращает абсолютное значение вводимого числа""" if num >= 0: return num else: return -num print(abs(2)) print(abs(-4))
Результат вывода
2 4
Домен переменной - это часть программы, в которой переменная может быть идентифицирована. Снаружи функции看不到 параметры и переменные, определенные внутри функции. Поэтому они имеют локальный домен.
Жизненный цикл переменной - это время, в течение которого переменная существует в памяти. Жизненный цикл переменной внутри функции такой же, как время выполнения функции.
Как только мы возвращаемся из функции, они уничтожаются. Таким образом, функция не может запомнить значение переменной в предыдущем вызове.
Это пример, который используется для объяснения жизни переменных внутри функции.
def my_func(): x = 10 print("Значение внутри функции:", x) x = 20 my_func() print("Значение вне функции:", x)
Результат вывода
Значение внутри функции: 10 Значение вне функции: 20
Здесь мы можем увидетьxее начальное значение 20. Даже если функция my_func() изменитxее значение изменено на 10, это также не повлияет на значение переменной вне функции.
Это потому, что переменная внутри функцииx сПеременная x вне функцииНо они являются двумя различными переменными с разным диапазоном действия.
С другой стороны, переменные, видимые снаружи функции, имеют глобальное действие, то есть их можно использовать как внутри, так и вне функции.
Мы можем читать эти значения изнутри функции, но не можем изменять (записывать) их. Если нужно изменить значение переменной вне функции, необходимо использовать ключевое слово global и объявить их как глобальные переменные.
В основном, функции можно разделить на два типа: