Python代码的静态分析,在一个代码库中,包含同一模块的多个实现,所有实现在

2024-04-18 11:37:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我不怀念必须一直键入类型声明的日子——这是我喜欢python的众多原因之一。你知道吗

但我喜欢至少有一些“变量在集合之前使用”、“变量集合但从未使用过”和“参数数目错误”的检查,以避免一些琐碎的错误。你知道吗

据报道,pylint是Python最严格的静态分析工具,所以我一直在使用它来进行此类检查。你知道吗

然而,我对pylint有点失望:例如,我有3个模块用3种不同的方式进行压缩(subprocess、ctypes、bz2模块),我想添加第4个模块(cpython3.3中的新lzma模块,尚未发布)。这些模块的可移植性和行为都略有不同。我希望pylint能够检查这些替代品,但它似乎迷失了方向。你知道吗

所以我开始使用一个很小的“调度模块”有一段时间了,它除了在不同的压缩方案之间进行选择之外什么也做不了,这不是Pylint的,这类的工作,但是没有我想要的那么好。它允许我对大部分代码进行pylint,但似乎使pylint无法检查压缩代码的使用情况。你知道吗

是否有某种方法可以获得python的静态分析,允许检查所有提供相同接口的多个模块,以及从相同代码调用这些模块?也许是啤酒片?或者一个神奇的“#pylint:”暗示我不知道?你知道吗

谢谢!你知道吗


Tags: 模块工具代码声明类型参数键入错误