Cómo hacer un decorador condicional en python.

Es posible decorar una función condicionalmente. Por ejemplo, quiero decorar la función.foo() con una función de temporizador (timeit) Sólo el análisis de rendimiento esTrue (ver el codigo psuedo abajo).

if doing_performance_analysis:
  @timeit
  def foo():
    """
    do something, timeit function will return the time it takes
    """
    time.sleep(2)
else:
  def foo():
    time.sleep(2)  

Respuestas a la pregunta(6)

Su respuesta a la pregunta