Python Programming/Decorators
From Wikibooks, the open-content textbooks collection
| Previous: Functions | Index | Next: Scoping |
Decorator in Python is a syntax sugar for high-level function.
Minimal Example of property decorator:
>>> class Foo(object): ... @property ... def bar(self): ... return 'baz' ... >>> F = Foo() >>> print F.bar baz
The above example is really just a syntax sugar for codes like this:
>>> class Foo(object): ... def bar(self): ... return 'baz' ... bar = property(bar) ... >>> F = Foo() >>> print F.bar baz
Minimal Example of generic decorator:
>>> def decorator(f): ... def called(*args, **kargs): ... print 'A function is called somewhere' ... return f(*args, **kargs) ... return called ... >>> class Foo(object): ... @decorator ... def bar(self): ... return 'baz' ... >>> F = Foo() >>> print F.bar() A function is called somewhere baz
| Previous: Functions | Index | Next: Scoping |