ch08, 09, 10: example files
This commit is contained in:
31
09-closure-deco/registration.py
Normal file
31
09-closure-deco/registration.py
Normal file
@@ -0,0 +1,31 @@
|
||||
# tag::REGISTRATION[]
|
||||
|
||||
registry = [] # <1>
|
||||
|
||||
def register(func): # <2>
|
||||
print(f'running register({func})') # <3>
|
||||
registry.append(func) # <4>
|
||||
return func # <5>
|
||||
|
||||
@register # <6>
|
||||
def f1():
|
||||
print('running f1()')
|
||||
|
||||
@register
|
||||
def f2():
|
||||
print('running f2()')
|
||||
|
||||
def f3(): # <7>
|
||||
print('running f3()')
|
||||
|
||||
def main(): # <8>
|
||||
print('running main()')
|
||||
print('registry ->', registry)
|
||||
f1()
|
||||
f2()
|
||||
f3()
|
||||
|
||||
if __name__=='__main__':
|
||||
main() # <9>
|
||||
|
||||
# end::REGISTRATION[]
|
||||
Reference in New Issue
Block a user