Hola, desde mi opinión, creo que no está mal tu planteo, es decir la forma en la que intentás llegar a ejecutar esas funciones, pero como bien te explicó
Mastermind, primero todo pasa por el compilador.
Yo creo que lo mejor que puedes hacer, es usar condicionales
if,
esle if y
else, por la simple razón de que C y C++ son los lenguajes más rápidos del mundo y los más utilizados, justamente porque son lenguajes compilados, de hecho muchísimas cosas (programas más exigentes) están hechas en C y C++.
Mirá te cuento algo
Pino1952, el otro día quería hacer un programa, que en realidad ya lo hice y está terminado, este programa todavía no cuenta con la ventana, pero si con la consola en donde se muestran de que País es cada IP, es decir, lo que hace el programa que hice es decirte de que País probiene cada dirección de IP.
Las direcciones de IPs van guardadas en un archivo de texto y la base de datos en donde hago las comprobaciones, tambien es en formato .txt, si, es cierto que realmente no es una base de datos como sería si fuese en MySQL, pero bueno, de igual forma me sirve y ahí almaceno toda la información, es decir todos los rangos primarios y secundarios, osea desde donde comienza un rango y donde termina, eso sería para saber si la IP que checkea el programa, está en el rango de la línea en donde está buscando, si lo es, entónces ya encontró de que País viene esa IP.
Ahora, ¿que tiene que ver esto con tu pregunta/problema? Bueno, te lo explico para vos y para todos los demás.
Yo como necesitaba comparar que un X número esté en Rango entre X y Z, lo que yo hice, fué usar una función en Python, más especificamente la función range(), perooo que paso? ahh me dió error, porque? porque el número del primer rango de IP y el segundo que llevaba como parámetros esa función, me daba error el programa porque obviamente son números muy grandes que la función no se va la banca, entónces, busqué por Google y encontré "mi salvación"

, que era otra función escrita en C, la misma es xrange(), bueeee hasta ahí todo de maravillas porque ya me funcionaba sin problemas las comprobaciones, pero...... luego que paso? ufff otro error más!! carajito dije yó! :S y ahora que pasó acá? bueno el tema era simple, cuando capturo el error, ví que también el problema era porque esos números que comparaba eran "demasiado largos" para una conversión a long en C, osea que la librería en C no podía pasar esos números a long en C, se entiende? es como que en intentés pasar a C un número muy largo a tipo long y te de error, bueno eso mismo.
Ahora, que hice? no me di por vencido, me puse a pensar y pensar hasta que dije, lo tengo! siiii! voy a probar esto!
Y pruebo ese método y siiiiiiii señor!!! funcionó perfectamente! osea ya podía comparar el rango de las IPs sin que el programa me lance el error, bueno, contento la verdad porque pude lograrlo, hoy hice una función con ese método y le puse un número bastante largo, pero largo realmente y funcionó perfectamente!!
Con respecto a tu código, está bien tu planteo, tu forma de querer llamar a esas funciones, pero las funciones seguramente son objetos, y vos lo que estás llamando son cadenas tipo string que por supuesto el compilador no te lo reconoce como una función válida.
Como dije, C es bastante rápido, no te hagas problemas por hacer 20, 1000 o 100000 if, else if's, el tema es llegar a lo que necesitás, si cláro que es bueno aprender a hacer cosas que no son habituales, como lo que trataste de hacer en tu código, es lo mismo que yo hice con mi programa, ni siquiera la función xrange() fué de ayuda ya que los números eran muy grandes.
Todo es cuestión de pensar e inventar cosas, obviamente mandate macanas que todos lo hacemos pero así vas a poder saber "porque falla" y "como resolverlo".
Espero que estas palabras te ayuden.
Por último quiero mostrarte estos 2 códigos que acabo de hacer en Python, veamoslo:
lista = "uno dos tres cuatro"
Contar = ".count(" ")"
print lista + Contar
raw_input()
Supuestamente ese código debería devolver:
3
y en ves de 3, devuelve:
uno dos tres cuatro.count()Osea que no funciona... Ahora probemos así:
lista = "uno dos tres cuatro"
Contar = "count(" ")"
print lista. + Contar
raw_input()
y obtengo el siguiente error:
print lista. + Contar
/\
SyntaxError: invalid syntaxTe mando 1 abrazo hermano, saludos y éxitos con tus códigos, seguí así inventando cosas que alguna vez vas a lograr algo innovador o alguna cosa que quizás muy pocos la saben, ¿porqué no?.
Saludos!