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

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

Автор оригинала: Python Examples.

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

Перед выполнением функции обратного вызова в Python сначала мы будем чистить понимание того, что такое функция обратного вызова.

Что такое функция обратного вызова?

Обратный вызов – это функция, которая передается как аргумент для другой функции. Ожидается, что эта другая функция будет вызывать эту функцию обратного вызова в своем определении. Точка, при которой другие функции вызывают наш обратный вызов, зависит от требования и характера другой функции.

Функции обратного вызова обычно используются с асинхронными функциями.

Пример Функции обратного вызова : Функция обратного вызова может быть передана функции для распечатки размера файла после того, как функция чтения дана текстовый файл.

Пример 1: Функция обратного вызова

В этом примере мы определим функцию имени printfilllength () который принимает путь к файлу и обратный вызов функции в качестве аргументов.

printfilllength () Читает файл, получает длину файла и в конце создает вызов функции обратного вызова.

Python Program

def callbackFunc(s):
    print('Length of the text file is : ', s)

def printFileLength(path, callback):
    f = open(path, "r")
    length = len(f.read())
    f.close()
    callback(length)

if __name__ == '__main__':
    printFileLength("sample.txt", callbackFunc)

Выход

Length of the text file is :  56

Вы можете пройти разные функции обратного вызова по мере необходимости. В следующей программе мы определим две функции callbackfunc1 () и callbackfunc2 (), которые мы будем использовать в качестве функций обратного вызова для printfilllenge (). Но мы не изменяем определение функции pryptfilllength ().

Python Program

def callbackFunc1(s):
    print('Callback Function 1: Length of the text file is : ', s)

def callbackFunc2(s):
    print('Callback Function 2: Length of the text file is : ', s)

def printFileLength(path, callback):
    f = open(path, "r")
    length = len(f.read())
    f.close()
    callback(length)

if __name__ == '__main__':
    printFileLength("sample.txt", callbackFunc1)
    printFileLength("sample.txt", callbackFunc2)

Выход

Callback Function 1: Length of the text file is :  56
Callback Function 2: Length of the text file is :  56

Резюме

В этом руководстве примеров Python мы узнали, что такое функция обратного вызова, и как реализовать функцию обратного вызова в Python с примерами.