2

非常に基本的な質問で申し訳ありませんが、ここで本当に苦労しています。再帰降下パーサーを作成する必要があります。私は Python で作業しており、PLY を使用しています。私の文法は次のとおりです。

< リスト > → (< シーケンス >) | ()

< シーケンス > → < リスト要素 > , < シーケンス > | < リスト要素 >

< リスト要素 > → < リスト > | 番号

それはこのように見えるでしょうか?私は道を外れていますか?最終的な目標は、リストをデータ構造に読み込み、それを出力することです。

デフォルト p_list(p)
    'list : "("シーケンス")" | "("")"'

デフォルト p_sequence(p)
    'シーケンス: list_el","シーケンス | list_el'

def p_list_el(p)
    'list_el: リスト | 番号'

完全な解決策が何であるか疑問に思っている人がいたら、すぐに投稿します。

4

1 に答える 1