Коммент в поддержку. Больше таких роликов, оч круто
@Vlakss9 ай бұрын
Очень интересно, но нихуа а не поняллл.. Пойду гуглить
@nokia_n-gage2 жыл бұрын
Отлично!
@xvostov_k2 жыл бұрын
Да это жестко.
@andrededov9296 Жыл бұрын
а просто буль вторым аргументом в функцию декоратора, не рисуя лишний деф, нельзя передать?
@f1n1st13 Жыл бұрын
Не могу понять как decorator_(func) получает в себя функцию если вызывается @decorator который должен как аргумент принимать функцию a()
@PythononPapyrusRU Жыл бұрын
Так как мы вызываем декоратор, то в само декорирование возвращается другая функция, а оттуда мы уже используем аргументы. Если непонятно, то можете написать мне в телеграм: @iv_andrew
@PavelNebo2 жыл бұрын
Ищу инфу по этой теме уже часа 3. Я понял что это работает, и сам синтаксис. Но я так и не понял как декорируемая функция передаётся декоратору внутри, ведь собака стоит перед другой функцией. Как так получается???
@regrer0002 жыл бұрын
декоратор - функция(которая в качестве аргумента, принимает другую функцию) @decorator def func(): ... аналог такой записи: func = decorator(func) проще говоря, это обычный синтаксический сахар)
@АлексейГошко-п1з6 ай бұрын
нормально
@НикитаКопылов-у9л2 жыл бұрын
как это применять на практике?
@PrizrakZamkov2 жыл бұрын
В библиотеках для телеграмм ботов как минимум используется, по такому же принципу можешь
@vlatterran2 жыл бұрын
Самый простой пример: Во встроенной библиотеке functools есть декоратор lru_cache, у которого есть необязательный аргумент cache_size (за точность имён не ручаюсь, но суть передана). Если с точки зрения "зачем мне самому писать такие декораторы", то тут сложнее, ибо мне в голову приходят только довольно сложные примеры, в основном связанные с написанием собственных библиотек/фреймворков, но вероятно если вы пишите свой декораторы, то рано или поздно вы столкнётесь с необходимостью передать в него дополнительные аргументы