第三方库decorator和 wrapt 哪个作为官方装饰器替代品比较好?
leafonsword opened this issue · comments
刀尖红叶 commented
《Python 工匠:使用装饰器的技巧》中介绍了 wrapt 这个第三方装饰器库,github 上还有个decorator库,和wrapt比较哪个作为官方装饰器语法的替代品更好呢?
piglei commented
说实话 decorator 模块我不是特别熟悉,我光记得,以前在写 pylons 代码的时候看到过,有一点映象。刚刚你发了链接,我翻了一下这模块居然在 2019 年还在更新,已经超过十年了。
在帮助写装饰器方面,两个模块有一定相似性,但是二者功能定位还是不完全一样,比如 wrapt 还提供了对象代理之类的功能、decorator 有一些内置的额外装饰器等。如果你只是简单使用,我觉得这俩都很成熟,闭着眼睛选一个就行。
PS:decorator 模块的文档真难读。相比之下 wrapt 的好很多。