Actualmente estoy usando esto:Lea y sobrescribir un archivo en Python
f = open(filename, 'r+')
text = f.read()
text = re.sub('foobar', 'bar', text)
f.seek(0)
f.write(text)
f.close()
Pero el problema es que el archivo de edad es mayor que el nuevo archivo. Así que termino con un nuevo archivo que tiene una parte del archivo anterior al final.
Gracias y buena respuesta. También quería señalar aquí que la mejor práctica es abrir el archivo en un 'con abrir (nombre de archivo, 'r +') como bloque f:', de esa manera se cierra automáticamente el archivo al final del bloque, incluso si hay una excepción . – mVChr