我在哪里可以找到Python的形式语法,特别是List Comprehension?
答案 0 :(得分:3)
这是完整的语法(Python 2.7.3):
http://docs.python.org/reference/grammar.html
以下规则涉及解析列表推导的一般语法:
首先,解析整个表达式,即atom
:
atom: ('(' [yield_expr|testlist_comp] ')' |
'[' [listmaker] ']' |
'{' [dictorsetmaker] '}' |
'`' testlist1 '`' |
NAME | NUMBER | STRING+)
其次,要解析理解的实际内容,listmaker
及其使用的规则:
listmaker: test ( list_for | (',' test)* [','] )
list_iter: list_for | list_if
list_for: 'for' exprlist 'in' testlist_safe [list_iter]
list_if: 'if' old_test [list_iter]
除此之外,您还可以回到一般的解析表达式,例如: exprlist
。