8 如何分析Python代码以找出问题区域? 我有一个跨多个项目的大型资源库。我想生成一份有关源代码运行状况的报告,以确定需要解决的问题区域。 具体来说,我想找出循环复杂度高的例程,确定重复性,并可能进行一些类似于皮棉的静态分析,以发现可疑的(因而可能是错误的)构造。 我将如何构建这样的报告? 99 python static-analysis cyclomatic-complexity
15 什么是环复杂性? 我时不时看到的一个术语是“循环复杂性”。在SO上,我看到了一些有关“如何计算语言X的CC”或“如何用最小的CC来做Y”的问题,但是我不确定我是否真正理解它是什么。 在NDepend网站上,我看到一个解释,基本上是这样说的:“方法中的决策数。每个if,for,&&等都将CC的“分数”加+1)。真的吗?如果是,为什么呢?我可以看到有人可能希望将if语句的数量保持在相当低的水平,以使代码易于理解,但这真的是要解决的一切吗? 还是有一些更深层次的概念? 74 language-agnostic architecture cyclomatic-complexity