0

是否有语法检查器能够根据边缘情况检测损坏的代码。一个例子:

def run():
    for j in [0, 1]:
        if j == 0:
            yield j
        else:
            yield None


for i in run():
    print i * 2

此代码已损坏,因为None * 2没有意义。是否有工具可以检测这种错误?

谢谢

4

2 回答 2

3

您正在寻找类型检查器,而不是语法检查器。这是一种尝试:http: //mypy-lang.org/

于 2016-10-12T23:05:14.000 回答
1

您需要一个类型检查器,而不是语法检查器。github.com/python/mypy

于 2016-10-12T23:55:01.857 回答