¿Cómo usar los decoradores de Python para verificar los argumentos de la función?

Me gustaría definir algunos decoradores genéricos para verificar los argumentos antes de llamar a algunas funciones.

Algo como:

@checkArguments(types = ['int', 'float'])
def myFunction(thisVarIsAnInt, thisVarIsAFloat)
    ''' Here my code '''
    pass

Notas al margen:

La comprobación de tipos está aquí para mostrar un ejemplo.Estoy usando Python 2.7 pero Python 3.0 debería ser interesante también

Respuestas a la pregunta(8)

Su respuesta a la pregunta