def parse_for_range(node: ast.Call) -> (str, str, str):
if len(node.args) != 3:
error(loc(node), "Expected 3 integer arguments in range(start, end, stop) found: {0}".format(len(node.args)))
return ('ERR', 'ERR', 'ERR')
if isinstance(node.args[0], ast.Name):
ok1, v1 = True, node.args[0].id
else:
ok1, v1 = TO_INT(node.args[0])
if isinstance(node.args[1], ast.Name):
ok2, v2 = True, node.args[1].id
else:
ok2, v2 = TO_INT(node.args[1])
if isinstance(node.args[2], ast.Name):
ok3, v3 = True, node.args[2].id
else:
ok3, v3 = TO_INT(node.args[2])
if ok1 and ok2 and ok3:
return (str(v1), str(v2), str(v3))
return ('ERR', 'ERR', 'ERR')
评论列表
文章目录