Es importante el concepto de que en Python todo es un objeto. Una función es un objeto y puede ser pasada por parámetro a otra función. Esto se utiliza, por ejemplo, para el manejo de callbacks en el uso de botones.
Capaz tu error viene por el lado de que tenes una variable con el mismo nombre que una función entonces cuando haces la resta de esa variable y otro entero te toma esa variable como si fuera una función (depende si definiste antes la variable o la función) y ahí te salta el error.
Ejemplo:
Código Python:
Ver originalsumar = 0
def sumar(a,b):
return a + b
print sumar-5