入れ子構造リストに文字列を変換
「タプルが含まれるリストの文字列」をリストに変換したいです。
txt = '['A', 'B', 'C', ('A','B'), ('B','C'), ('A','C')]'
を、文字列とタプルが混在するリストの
l = ['A', 'B', 'C', ('A','B'), ('B','C'), ('A','C')]
に変換したいです。ast.literal_eval()などは入れ子などには対応しておらずできませんでした。
よろしくお願いします。
0
「タプルが含まれるリストの文字列」をリストに変換したいです。
txt = '['A', 'B', 'C', ('A','B'), ('B','C'), ('A','C')]'
を、文字列とタプルが混在するリストの
l = ['A', 'B', 'C', ('A','B'), ('B','C'), ('A','C')]
に変換したいです。ast.literal_eval()などは入れ子などには対応しておらずできませんでした。
よろしくお願いします。
文字列のクォーテーションに誤りがあるように見えます。シングルクオートで囲んだ文字を更に囲むには、ダブルクオートを使います(逆でも大丈夫です)。
>>> import ast
>>> txt = "['A', 'B', 'C', ('A','B'), ('B','C'), ('A','C')]"
>>> ast.literal_eval(txt)
['A', 'B', 'C', ('A', 'B'), ('B', 'C'), ('A', 'C')]
@terasima712
Questioner