Python 测试边缘情况的语法检查器
Python syntax checkers that test edge cases
是否有语法检查器能够根据边缘情况检测损坏的代码。一个例子:
def run():
for j in [0, 1]:
if j == 0:
yield j
else:
yield None
for i in run():
print i * 2
此代码已损坏,因为 None * 2
没有意义。是否有检测此类错误的工具?
谢谢
您正在寻找类型检查器,而不是语法检查器。这是一种尝试:http://mypy-lang.org/
您需要的是类型检查器,而不是语法检查器。 github.com/python/mypy
是否有语法检查器能够根据边缘情况检测损坏的代码。一个例子:
def run():
for j in [0, 1]:
if j == 0:
yield j
else:
yield None
for i in run():
print i * 2
此代码已损坏,因为 None * 2
没有意义。是否有检测此类错误的工具?
谢谢
您正在寻找类型检查器,而不是语法检查器。这是一种尝试:http://mypy-lang.org/
您需要的是类型检查器,而不是语法检查器。 github.com/python/mypy