¿Es posible cambiar la reproducción de una función en python?

Solo he visto ejemplos para configurar el__repr__ Método en las definiciones de clase. ¿Es posible cambiar el__repr__ ¿Para funciones ya sea en sus definiciones o después de definirlas?

Lo he intentado sin éxito ...

>>> def f():
    pass
>>> f
<function f at 0x1026730c8>
>>> f.__repr__ = lambda: '<New repr>'
>>> f
<function __main__.f>

Respuestas a la pregunta(3)

Su respuesta a la pregunta