Possível alterar repr de uma função em python?

Eu só vi exemplos para definir o__repr__ método em definições de classe. É possível alterar o__repr__ para funções em suas definições ou depois de defini-las?

Eu tentei sem sucesso ...

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