Steven D'Aprano a écrit : (snip) > eval("{" + reduce(lambda x,y: y+', '+x, [mo.group(1) for mo in __import__ > ('re').finditer(r"('E.*?'\s*:\s*'.*?'),?", str(record))], "") + "}") Maman ! Steven, you choose the wrong language. You definitively want Perl !