¿Se evalúan las funciones cuando se pasan como parámetros?

Si tengo un código como este:

def handler(self):
   self.run(self.connect)

def connect(self, param):
   #do stuff...

def run(self, connector):
   self.runner = connector

¿Qué se evalúa primero cuando llamo self.run (self.connect)?

ejecutar con las cosas en conectar ya hecho? ¿O conectarte con self.connect para ser evaluado?

Respuestas a la pregunta(2)

Su respuesta a la pregunta