Рубрики
Без рубрики

Функция возврата Python

Автор оригинала: 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. Определите функцию1 ().
  2. Определите функцию2 ().
  3. Вызов функции1 ().
  4. Функция2 Ссылка возвращается из функции1. Соблюдайте, что функция2 упоминается без скобки. Мы возвращаем ссылку на функцию, не вызывая ее.
  5. Назначьте возвращенную функцию ссылки на X.
  6. x () вызывает функцию, присвоенную x.
  7. Выполнить оператор 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 мы узнали, как вернуть функцию с помощью примеров.