Python调试器PDB嵌套for循环SyntaxError:无效语法(<stdin>,第1行)</stdin>

时间:2014-08-06 21:33:40

标签: python debugging pdb

当我使用PDB运行脚本时,我发现必须将for循环放入一行才能正确运行。当我尝试嵌套for循环时,如下所示,我得到一个SyntaxError。如何运行嵌套for循环??

(pdb) for input in range(20): print input*2
0
2
4
...
36
38

(pdb) for input in range(20): for output in range(10): print input*2
*** SyntaxError: invalid syntax(<stdin>, line 1)

1 个答案:

答案 0 :(得分:1)

这与pdb没有关系,但只是python(在普通的python repl中失败)。

for语句的语法定义为:

for_stmt ::=  "for" target_list "in" expression_list ":" suite
              ["else" ":" suite]

其中suite是简单语句列表或换行符和语句列表。 for statment是一个复合语句,所以它不能像那样内联。