【发布时间】:2021-12-03 10:46:05
【问题描述】:
正如标题所述,我想要实现的目标如下: 我有一个 python 代码库,我想将所有函数从 camelCasing 重命名为 underscore_naming。为了保持向后兼容性,我重命名了所有函数,但为所有旧名称创建了函数别名。到目前为止,一切顺利。
现在我想做的是向函数别名添加弃用警告,最好是这样的方式:
def do_something():
...
@deprecated(deprecated_in='2.0',
details='All functions have been adapted to fit the PEP8 standard. Please use "do_something" instead')
doSomething = do_something
因此,如果有人使用旧的 API 调用,他们会收到弃用警告。我查看了deprecation 和Deprecated,但它们似乎都不适用于别名。
我意识到我可以为每个不推荐使用的名称创建一个函数定义并对其进行装饰,但这会失去函数别名的优雅,并且会产生更多肮脏的代码。有没有人有一个很好的建议来实现我想要的?
【问题讨论】:
-
听起来像模块
__getattr__的工作。
标签: python function alias deprecated