Analice un archivo .py, lea el AST, modifíquelo y luego vuelva a escribir el código fuente modificado

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

Quiero editar el código fuente de Python mediante programación. Básicamente quiero leer un archivo .py, generar el AST, y luego vuelva a escribir el código fuente de Python modificado (es decir, otro archivo .py).

Hay formas de analizar/compilar el código fuente de Python utilizando módulos estándar de Python, como ast o compilador. Sin embargo, no creo que ninguno de ellos admita formas de modificar el código fuente (por ejemplo, eliminar esta declaración de función) y luego volver a escribir el código fuente de modificación de Python.

ACTUALIZAR: la razón por la que quiero hacer esto es que me gustaría escribir una biblioteca de pruebas de mutación para python, principalmente eliminando declaraciones/expresiones, volver a ejecutar pruebas y ver qué falla.