|
发表于 2020-4-19 23:30:23
|
显示全部楼层
本帖最后由 Stubborn 于 2020-4-19 23:39 编辑
- from functools import wraps
- def set_magicians(func):
- @wraps(func)
- def wrapper(*args, **kwargs):
- magicians = args[0] if args[0] else kwargs.get("magicians")
- magicians = ["this is "+ x for x in magicians]
- func(magicians)
- return wrapper
- magicians = ['david', 'Louis Liu', 'annie']
- @set_magicians
- def show_magicians(magicians):
- for magician in magicians:
- print(magician)
- show_magicians(magicians)
复制代码
可以使用装饰器,非常强大的功能
简单一点的,就这样咯
- magicians = ['david', 'Louis Liu', 'annie']
- def show_magicians(magicians):
- for magician in magicians:
- print(magician)
- def set_magicians(arg, callback):
- arg = ["the great "+ x for x in arg]
- callback(arg)
- set_magicians(magicians, show_magicians)
复制代码 |
|