Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- handlers = []
- def register(func, data_type):
- handlers.append((func, data_type))
- def handle(data):
- for func, data_type in handlers:
- d = data.get(func, data_type())
- data[func] = func(d)
- def counter(x):
- print('counter', x)
- return x + 1
- register(counter, int)
- register(lambda s: s + 'a', str)
- data = {}
- handle(data)
- handle(data)
- handle(data)
- print(data)
Advertisement
Add Comment
Please, Sign In to add comment