Programación funcional en python
La función exit, declarada en
La función abort, también declarada en el archivo de inclusión estándar
Utilice la función atexit para especificar acciones que se ejecuten antes de que el programa termine. Ningún objeto estático global inicializado antes de la llamada a atexit se destruye antes de la ejecución de la función de procesamiento de salida.
Programación imperativa
Recordemos que una variable es una etiqueta para una ubicación en la memoria. Puede utilizarse para contener un valor. En los lenguajes tipados estáticamente, las variables tienen tipos predeterminados, y una variable sólo puede usarse para contener valores de ese tipo. En Python, podemos reutilizar la misma variable para almacenar valores de cualquier tipo.
Una variable es similar a la funcionalidad de la memoria que se encuentra en la mayoría de las calculadoras, en el sentido de que mantiene un valor que puede ser recuperado muchas veces, y que al almacenar un nuevo valor se borra el anterior. Una variable difiere de la memoria de una calculadora en que uno puede tener muchas variables almacenando diferentes valores, y que cada variable es referida por un nombre.
Esto es exactamente la misma sintaxis que asignar un nuevo valor a una variable existente llamada count. Más adelante en este capítulo discutiremos bajo qué circunstancias esta declaración hará que se cree una nueva variable.
No todas las variables son accesibles desde todas las partes de nuestro programa, y no todas las variables existen durante el mismo tiempo. El lugar en el que se puede acceder a una variable y el tiempo que existe dependen de cómo se defina. Llamamos ámbito a la parte del programa en la que se puede acceder a una variable, y vida a la duración de la variable.
La función en la programación
Uno de los bloques de construcción más básicos de la programación son las funciones. Puedes escribir programas extremadamente simples sin ellas, pero todo lo que vaya más allá de las demostraciones de “Hola Mundo” probablemente necesitará utilizar funciones eventualmente.
Una vez que se define una función, se introduce código en ella como se haría en cualquier otro lugar del programa. Dando a la función un nombre y definiendo los parámetros que debe aceptar, puedes pasar información a la función y devolver algún resultado. Las funciones son reutilizables, por lo que una vez que escribes una, puedes llamarla en cualquier otra parte de tu programa.
Las clases de introducción a la programación suelen describir las funciones como “cajas negras”. Es decir, cuando un programador llama a una función, no le importa lo que hace exactamente el código que contiene; sólo necesita el resultado.
Por ejemplo, si escribieras una función para leer muchos números de un archivo de texto y calcular el modo, no necesitarías saber cómo funciona para usarla. Siempre que supieras que la función espera un archivo de texto lleno de números como entrada y da como resultado un número, podrías usarla en cualquier programa sin muchos problemas.
Lenguajes de programación funcionales
Hacen lo mismo con la programación que los kits de muebles prefabricados hacen con la construcción de casas: es mucho más fácil coger paneles ya cortados y atornillarlos para hacer una estantería que elaborar el diseño uno mismo, ir a buscar la madera correcta, cortar todos los paneles con el tamaño y la forma adecuados, encontrar los tornillos del tamaño correcto y luego unirlos para hacer una estantería.
Cada pestaña del navegador tiene su propio cubo para ejecutar el código (estos cubos se llaman “entornos de ejecución” en términos técnicos) – esto significa que en la mayoría de los casos el código en cada pestaña se ejecuta completamente por separado, y el código en una pestaña no puede afectar directamente al código en otra pestaña – o en otro sitio web.
Aquí estamos seleccionando un párrafo de texto (línea 1), y luego adjuntando un oyente de eventos a él (línea 3) para que cuando se haga clic en el párrafo, se ejecute el bloque de código updateName() (líneas 5-8). El bloque de código updateName() (este tipo de bloques de código reutilizables se denominan “funciones”) pide al usuario un nuevo nombre, y luego inserta ese nombre en el párrafo para actualizar la pantalla.