En Python , las funciones de servir de base para cualquier proyecto complejo . La práctica de las funciones de creación de prototipos , o declararlos antes de definirlos, ha existido desde la invención del lenguaje de programación C . No todos los idiomas se comportan de la misma manera. Mientras lenguajes como C normalmente requieren la función de prototipos, lenguajes como Python no. De hecho , Python no tiene ningún mecanismo real para apoyar la creación de un prototipo . Esto es debido a la forma de Python maneja las funciones . Funciones
Las funciones son bloques de código que se les da un nombre y un espacio de memoria por el compilador o intérprete del programa. Al igual que una función matemática , funciones de programación toman argumentos en forma de variables , sobre la que realizar alguna tarea y producir algún resultado . Funciones de los programadores de ayuda en que, una vez creado , el programador puede seguir llamando la misma función en un programa , simplemente mediante el uso de su nombre y el suministro de los argumentos apropiados .
Función Prototipos
< p > en el lenguaje de programación C , que define las funciones de un programa requiere un cierto orden . Después de que los comandos " preprocesador " que incluyen bibliotecas externas y definir macros, el programador debe declarar el "prototipo" de cada función que se utiliza en el programa , con exclusión de la función "main". El prototipo indica al compilador C de reservar memoria para una función de ajuste de la definición del prototipo.
Forward referencia a
Dado que los programas C utilizan prototipos como parte de su sintaxis , funciones C en un programa son a menudo "delantero referencia ", lo que significa que las funciones utilizadas en el programa no se definirán hasta después del código del programa. Esencialmente , haciendo referencia hacia delante significa que el compilador permitir la ejecución de una función , en el entendimiento de que la función se define más adelante en el programa . Desde C utiliza prototipos , las funciones normalmente no se definen hasta después del programa principal , es decir, todas las funciones hacen referencia a seguir.
Python y Adelante referencia a intérprete
de Python no permite prototipos de función. El comando "def " en las funciones de Python como un comando para crear una función. Esto significa que la función se crea en el acto. El intérprete no acepta que una función " será " definido en algún momento futuro. La única cosa que el intérprete de Python busca es cuando se utiliza la función. Por ejemplo , la primera llamada a la función " foo" no va a funcionar , ya que " foo" no se ha definido . La segunda convocatoria dentro de la clase A será, ya que un objeto de la clase A se creó después de foo se declara :
foo () //delante referencia
clase
: def __ init__ ( self): foo ( )
def foo ( ) : print " Hola"
a = a ( ) //no hace referencia hacia adelante