Sobes.tech
Junior — Middle
85

Оё метавонед шарҳи кунед, ки паттерни декоратор дар забони Python чист ва чӣ гуна истифода мешавад?

Ширкатҳо дар куҷо пурсиданд
ООО УайтСнейк
MasterDeliveryMasterDelivery
Employ City
Фабрика РешенияФабрика Решения
РунитиРунити
Т-БанкТ-Банк
RutubeRutube
Лига Цифровой ЭкономикиЛига Цифровой Экономики
Positive TechnologiesPositive Technologies
БилайнБилайн
EvappsEvapps

Ҷавоб аз AI

sobes.tech AI

Паттерн декоратора в Python — это способ динамически расширять функциональность функций или методов без изменения их исходного кода. Декоратор — это функция, которая принимает другую функцию и возвращает новую функцию с дополнительным поведением.

Пример простого декоратора, который выводит время выполнения функции:

import time

def timer(func):
    def wrapper(*args, **kwargs):
        start = time.time()
        result = func(*args, **kwargs)
        end = time.time()
        print(f"Время выполнения {func.__name__}: {end - start:.4f} секунд")
        return result
    return wrapper

@timer
def some_function():
    time.sleep(1)

some_function()

Здесь @timer — синтаксический сахар для some_function = timer(some_function). Декораторы широко применяются для логирования, проверки прав доступа, кэширования и других аспектов, отделяя дополнительную логику от основной функции.