Запитання з тегом «decorator»

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

17
Як зробити ланцюжок декораторів функції?
Як я можу зробити двох декораторів на Python, які б зробили наступне? @makebold @makeitalic def say(): return "Hello" ... що має повернутись: "<b><i>Hello</i></b>" Я не намагаюся зробити HTMLцей шлях справжнім додатком - просто намагаюся зрозуміти, як працюють декоратори та ланцюги декораторів.

14
Як працює декоратор @property?
Я хотів би зрозуміти, як працює вбудована функція property. Що мене бентежить, це те, що він propertyтакож може бути використаний як декоратор, але він бере аргументи лише тоді, коли використовується як вбудована функція, а не коли використовується як декоратор. Цей приклад із документації : class C(object): def __init__(self): self._x = …

22
Створення синглтона в Python
Це питання не для обговорення того, бажана чи не однотонна модель дизайну , є антидіаграмою чи для будь-яких релігійних війн, а для обговорення того, як цей шаблон найкраще реалізується в Python таким чином, який є найбільш пітонічним. У цьому випадку я визначаю "найбільш пітонічний", щоб означати, що він відповідає "принципу …

6
Що робить functools.wraps?
У коментарі до цієї відповіді на інше питання хтось сказав, що вони не впевнені, що functools.wrapsце робить. Отже, я задаю це запитання, щоб він був записом його в StackOverflow для подальшої довідки: що functools.wrapsробити саме?

13
Як відрізняються шаблони проксі, декоратора, адаптера та моста?
Я дивився на шаблон проксі, і мені це здається жахливим, як шаблони декораторів, адаптерів та мостів. Я щось нерозумію? Яка різниця? Чому я використовую шаблон проксі для інших? Як ви використовували їх у минулому в реальних проектах?

13
Декоратори з параметрами?
У мене є проблема з передачею змінної 'Insurance_mode' від декоратора. Я зробив би це за допомогою наступного твердження декоратора: @execute_complete_reservation(True) def test_booking_gta_object(self): self.test_select_gta_object() але, на жаль, це твердження не працює. Можливо, можливо, є кращий спосіб вирішити цю проблему. def execute_complete_reservation(test_case,insurance_mode): def inner_function(self,*args,**kwargs): self.test_create_qsf_query() test_case(self,*args,**kwargs) self.test_select_room_option() if insurance_mode: self.test_accept_insurance_crosseling() else: self.test_decline_insurance_crosseling() …
401 python  decorator 

13
Які існують для декораторів Python? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 6 років тому . Удосконаліть це питання Хоча мені подобається думати про себе як про грамотно розробленому Python-кодері, одним із аспектів мови, …
337 python  decorator 

28
Попередження експериментальних декораторів у компіляції TypeScript
Я отримую попередження ... Експериментальна підтримка декораторів - особливість, яка може бути змінена в майбутньому випуску. Встановіть параметр "експериментальні Декоратори", щоб видалити це попередження. ... навіть незважаючи на те, що мої компіляториOptions в tsconfig.json мають такі налаштування: "emitDecoratorMetadata": true, "experimentalDecorators": true, Що дивно, це те, що деякі випадкові класи, які …

15
Як отримати назви параметрів методу?
З огляду на функцію Python: def a_method(arg1, arg2): pass Як я можу отримати число та назви аргументів. Тобто, враховуючи, що я маю посилання func, я хочу func.[something]повернутися ("arg1", "arg2"). Сценарій використання для цього полягає в тому, що у мене є декоратор, і я хочу використовувати аргументи методу в тому ж …

2
Що означає "@" (у символі) в декораторі Redux @connect?
Я вивчаю Redux з React і натрапив на цей код. Я не впевнений, характерний він для Redux чи ні, але я бачив наступний фрагмент коду в одному з прикладів. @connect((state) => { return { key: state.a.b }; }) Хоча функціональність connectдосить проста, але я не розумію , @перш ніж connect. …

3
Як реалізувати декоратор машинопису?
У TypeScript 1.5 тепер є декоратори . Чи може хтось навести простий приклад, який демонструє правильний спосіб реалізації декоратора та описав, що означають аргументи у можливих дійсних підписах декораторів? declare type ClassDecorator = <TFunction extends Function>(target: TFunction) => TFunction | void; declare type PropertyDecorator = (target: Object, propertyKey: string | …


5
Виклик статичного методу класу в тілі класу?
Коли я намагаюся використати статичний метод зсередини тіла класу та визначити статичний метод, використовуючи вбудовану staticmethodфункцію в якості декоратора, як це: class Klass(object): @staticmethod # use as decorator def _stat_func(): return 42 _ANS = _stat_func() # call the staticmethod def method(self): ret = Klass._stat_func() + Klass._ANS return ret Я отримую …

16
Чи є декоратор, щоб просто кешувати функцію повернення значень?
Розглянемо наступне: @property def name(self): if not hasattr(self, '_name'): # expensive calculation self._name = 1 + 1 return self._name Я новачок, але я думаю, що кешування можна перетворити на декоратор. Тільки я такого не знайшов;) PS реальний розрахунок не залежить від змінних значень

4
Чому @ foo.setter в Python не працює для мене?
Отже, я граю з декораторами в Python 2.6, і у мене виникають певні труднощі з їх роботою. Ось мій файл класу: class testDec: @property def x(self): print 'called getter' return self._x @x.setter def x(self, value): print 'called setter' self._x = value Я вважав, що це означає - це трактувати xяк …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.