python 2的Inspect模块中的签名方法



我正在尝试在Python 2中运行Python 3库。它使用inspect模块和signature方法,这些方法在Python 2版本的模块中没有实现。

signature = inspect.signature(initializer)

__future__中没有任何实现可以提供帮助(至少,我还没有找到(。

如何替换此方法?

PyPI上的包funcsigs是PEP-362(它添加了签名内省(到Python 2.6+的后台端口。因此,将有问题的行更改为

import funcsigs
signature = funcsigs.signature(initializer)

inspect2是整个Python 3.6inspect模块到Python 2.7的后台端口。与funcsigs一样,它也可从PyPI获得,inspect2是最近维护的。(在我写这篇文章的时候,inspect2上次更新是在2019年,而funcsigs上次更新是2016年。(

最新更新