だからここに私の問題があります:
次のようなリストに行インデント レベルのテキスト ファイルを正常に解析しました。
A = [[1,'a'],[1,'b'],[2,'c'],[2,'d'],[1,'e'],[2,'f']]
list の各要素Aは、長さ 2 のリストです。各要素は、テキスト ファイルから読み取られた行に対応します。A[x][0]はindent levelテキスト ファイル内の行の です。A[x][1]は行の内容です。xは 内の任意の要素のインデックスですA。
たとえばA[1] = [1,'b']、1はインデント レベルで'b'、 は行テキストです。
A[2]およびie サブインデント行A[3]の子です。A[1]
次の形式になる出力リストを取得しようとしています。
B = [['a'],['b',['c','d']],['e',['f']]]
このように反復するB[x][0]と、最初のレベルのインデントされたアイテムのみが取得され、各要素に再帰的に移動できます。
アルゴリズムは無限の深さを処理できる必要があります。つまりA[3]、要素が続く場合は[3,'z']、のネストされたリストにする必要がありA[3]ます。
同様の問題を解決して使用する他の投稿をいくつか調べましitertools.groupbyたが、残念ながら、私の問題に適用できるほど十分に理解できていません。
助けてくれて本当にありがとう!