非常に基本的な質問で申し訳ありませんが、ここで本当に苦労しています。再帰降下パーサーを作成する必要があります。私は Python で作業しており、PLY を使用しています。私の文法は次のとおりです。
< リスト > → (< シーケンス >) | ()
< シーケンス > → < リスト要素 > , < シーケンス > | < リスト要素 >
< リスト要素 > → < リスト > | 番号
それはこのように見えるでしょうか?私は道を外れていますか?最終的な目標は、リストをデータ構造に読み込み、それを出力することです。
デフォルト p_list(p) 'list : "("シーケンス")" | "("")"' デフォルト p_sequence(p) 'シーケンス: list_el","シーケンス | list_el' def p_list_el(p) 'list_el: リスト | 番号'
完全な解決策が何であるか疑問に思っている人がいたら、すぐに投稿します。