Analise um arquivo .py, leia o AST, modifique-o e escreva novamente o código-fonte modificado

| | | | | | | | | | | | | | | |

Quero editar programaticamente o código-fonte python. Basicamente eu quero ler um arquivo .py, gerar o AST, e, em seguida, escreva de volta o código-fonte python modificado (ou seja, outro arquivo .py).

Existem maneiras de analisar/compilar o código-fonte python usando módulos python padrão, como ast ou compilador. No entanto, acho que nenhum deles suporta maneiras de modificar o código-fonte (por exemplo, excluir esta declaração de função) e, em seguida, escrever de volta o código-fonte do python modificador.

ATUALIZAÇÃO: A razão pela qual eu quero fazer isso se eu gostaria de escrever uma biblioteca de teste de mutação para python, principalmente excluindo instruções/expressões, reexecutar testes e ver o que falha.