Вопросы с тегом «decorator»

128
декораторы в стандартной библиотеке Python (специально @deprecated)

Мне нужно пометить подпрограммы как устаревшие, но, очевидно, нет стандартного декоратора библиотеки для устаревания. Мне известны рецепты этого и модуль предупреждений, но мой вопрос: почему нет стандартного декоратора библиотеки для этой (общей) задачи? Дополнительный вопрос: есть ли вообще в...

118
Как создать абстрактные свойства в абстрактных классах Python

В следующем коде я создаю базовый абстрактный класс Base. Я хочу, чтобы все классы, от которых наследуются, Baseпредоставляли nameсвойство, поэтому я сделал это свойство свойством @abstractmethod. Затем я создал подкласс Base, называемый Base_1, который предназначен для обеспечения некоторой...

112
Шаблоны Ruby on Rails - декоратор против презентатора

В последнее время в сообществе Ruby on Rails много говорят о декораторах и презентаторах. В чем существенная разница между ними? Если да, то какие подсказки подсказывают мне, какой из них использовать вместо другого? Или, возможно, использовать их...

111
Сохранение подписей декорированных функций

Предположим, я написал декоратор, который делает что-то очень общее. Например, он может преобразовывать все аргументы в определенный тип, вести журнал, реализовывать мемоизацию и т. Д. Вот пример: def args_as_ints(f): def g(*args, **kwargs): args = [int(x) for x in args] kwargs = dict((k, int(v))...

109
Декоратор свойств запоминания / отложенного поиска в Python

Недавно я просмотрел существующую базу кода, содержащую множество классов, в которых атрибуты экземпляра отражают значения, хранящиеся в базе данных. Я отредактировал многие из этих атрибутов, чтобы их поиск в базе данных был отложен, т.е. не инициализироваться в конструкторе, а только при первом...

109
Может ли декоратор метода экземпляра получить доступ к классу?

У меня примерно следующее. В основном мне нужно получить доступ к классу метода экземпляра из декоратора, используемого для метода экземпляра в его определении. def decorator(view): # do something that requires view's class print view.im_class return view class ModelA(object): @decorator def...

101
Webpack babel 6 декораторы ES6

У меня есть проект, написанный на ES6 с веб-пакетом в качестве сборщика. Большая часть транспилирования работает нормально, но когда я пытаюсь включить декораторы где угодно, я получаю эту ошибку: Decorators are not supported yet in 6.x pending proposal update. Я просмотрел трекер ошибок babel и...

93
Как определить, установлен ли корневой регистратор на уровень DEBUG в Python?

Если я установлю для модуля ведения журнала значение DEBUG с таким параметром командной строки: if (opt["log"] == "debug"): logging.basicConfig(level=logging.DEBUG) Как я могу позже определить, установлен ли регистратор на DEBUG? Я пишу декоратор, который будет синхронизировать функцию, если ему...

88
Как создать декоратор Python, который можно использовать с параметрами или без них?

Я хотел бы создать декоратор Python, который можно было бы использовать с параметрами: @redirect_output("somewhere.log") def foo(): .... или без них (например, для перенаправления вывода на stderr по умолчанию): @redirect_output def foo(): .... Это вообще возможно? Обратите внимание, что я не ищу...