el uso de caracteres especiales en las funciones: Python
Pregunta
Estoy escribiendo un cliente xmlrpc que utiliza un servidor escrito en Ruby. Una de las funciones es framework.busy? (). Te voy a enseñar la versión rubí:
server.call( "framework.busy?" )
Así que supongamos que crea una instancia del servidor digamos clase ServerProxy. Así, mientras que el uso de Python para llamar a la función ocupado? Necesito uso:
server.framework.busy?()
Esto conduce a un error:
SyntaxError: invalid syntax
¿Cómo puedo llamar a esta función? O estoy leyendo el código incorrecto rubí y su aplicación errónea.
Solución
Nunca he tenido a métodos XML llamada con un signo de interrogación (y tengo la fuerte sospecha que en realidad podría estar fuera de especificaciones de XML-RPC), pero trata de esto:
server.framework.getattr('busy?')()
No tengo ni idea de que las obras, y se necesitaría para poner un ejemplo de código y tener un servidor de trabajo que pude probar en contra. :)
En cualquier caso, probablemente no es una buena idea tener un signo de interrogación en el nombre del método, por lo que si se puede modificar el servidor de Ruby a algo más sano, que sería de gran ayuda.