Автор оригинала: Python Examples.
Функция возврата Python
В Python функциями являются первоклассными объектами. Это означает, что функция так же, как любой другой объект. И как и любой другой объект, вы можете вернуть функцию из функции.
В этом руководстве мы узнаем, как вернуть функцию и сценарии, где это можно использовать.
Пример 1: Функция возврата
В следующей программе мы определяем две функции: функция1 () и функция2 (). Функция1 () Возвращает функцию2 () в качестве возвращаемого значения.
Python Program
def function1(): return function2 def function2(): print('Function 2') x = function1() x()
Выход
Function 2
Примечание. Имя функции с скобками вызывает функцию, а имя функции без скобки возвращает ссылку на функцию.
Теперь давайте понять, как произойдет казнь для этой программы. Ниже приведен шаг запуска запуска выполнения вышеуказанной программы.
- Определите функцию1 ().
- Определите функцию2 ().
- Вызов функции1 ().
- Функция2 Ссылка возвращается из функции1. Соблюдайте, что функция2 упоминается без скобки. Мы возвращаем ссылку на функцию, не вызывая ее.
- Назначьте возвращенную функцию ссылки на X.
- x () вызывает функцию, присвоенную x.
- Выполнить оператор Print () внутри функции2 ().
Пример 2: Функция возврата – пример калькулятора
Теперь мы увидим пример калькулятора, где мы определяем функции, такие как Add (), вычесть, умноженно ().
Python Program
def add(a, b): return a + b def subtract(a, b): return a - b def multiply(a, b): return a * b def getArithmeticOperation(operation): if operation==1: return add elif operation==2: return subtract elif operation==3: return multiply while True: print('Arithmetic Operations') print('1. Addition') print('2. Subtraction') print('3. Multiplication') print('0. Exit') operation = int(input('Enter the arithmetic operation : ')) if(operation==0): break func = getArithmeticOperation(operation) a = int(input('Enter a : ')) b = int(input('Enter b : ')) result = func(a, b) print('The result is :', result)
Выход
Arithmetic Operations 1. Addition 2. Subtraction 3. Multiplication 0. Exit Enter the arithmetic operation : 1 Enter a : 58 Enter b : 4 The result is : 62
Гематритметометр () Возвращает функцию на основе значения аргумента.
Резюме
В этом руководстве примеров Python мы узнали, как вернуть функцию с помощью примеров.