Вопрос по информатике
Анонимный
1 год назад

Написать пример функции декоратора.

Ответы 2

Ответ:

def my_decorator(func):

   def wrapper(*args, **kwargs):

       print("Перед викликом функції")

       result = func(*args, **kwargs)

       print("Після виклику функції")

       return result

   return wrapper

@my_decorator

def my_function():

   print("Виклик функції")

my_function()

Объяснение:

В результаті, при виконанні коду, ви отримаєте наступний вихід:

Перед викликом функції

Виклик функції

Після виклику функції

Ответ:

def uppercase_decorator(function):

def wrapper():

result = function()

uppercase_result = result.upper()

return uppercase_result

return wrapper

@uppercase_decorator

def greeting():

return "Hello, world!"

print(greeting())

У цьому прикладі ми визначаємо функцію uppercase_decorator, яка приймає іншу функцію function як аргумент. Вона також визначає нову функцію wrapper, яка обгортає оригінальну функцію function.

Функція wrapper додає додатковий функціонал до оригінальної функції function. У цьому конкретному випадку, вона отримує результат виклику function, перетворює його на великі літери за допомогою методу upper(), і повертає цей результат.

Застосувавши декоратор @uppercase_decorator до функції greeting, ми змінюємо поведінку оригінальної функції. Тепер, коли ми викликаємо greeting(), вона повертає рядок "HELLO, WORLD!", оскільки він був перетворений на великі літери завдяки декоратору.

Вивід програми буде:HELLO, WORLD!

Це простий приклад декоратора, який додає функціональність до існуючої функції. Декоратори дозволяють зручно модифікувати або розширювати функціонал функцій без потреби внесення змін безпосередньо до них.

0 0 оценок
Премиум статус
Получайте самые быстрые
ответы на свои вопросы
У вас остались
вопросы?