Python の正式な文法、具体的には List Comprehension はどこにありますか?
質問する
1556 次
1 に答える
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
。
于 2012-10-26T05:53:12.193 に答える