Funciones

Python proporciona varias funciones incorporadas, pero también puedes escribir tus propias funciones. Una función es como un miniprograma dentro de un programa.

Para entender mejor cómo funcionan las funciones, vamos a crear una. Introduce este programa en el editor de archivos y guárdalo como helloFunc.py:

 def hello():
     print('Howdy!')
       print('Howdy!!!')
       print('Hello there.')

hello()
   hello()
   hello()

Puedes ver la ejecución de este programa en https://autbor.com/hellofunc/. La primera línea es una sentencia def ➊, que define una función llamada hola(). El código del bloque que sigue a la sentencia defes el cuerpo de la función. Este código se ejecuta cuando se llama a la función, no cuando la función se define por primera vez.

Las líneas hello() que siguen a la función ➌ son llamadas a la función. En código, una llamada a una función es simplemente el nombre de la función seguido de paréntesis, posiblemente con algún número de argumentos entre los paréntesis. Cuando la ejecución del programa llega a estas llamadas, saltará a la línea superior de la función y comenzará a ejecutar el código allí. Cuando llega al final de la función, la ejecución vuelve a la línea que llamó a la función y continúa moviéndose a través del código como antes.

Como este programa llama a hello() tres veces, el código de la función hello() se ejecuta tres veces. Cuando se ejecuta este programa, la salida tiene el siguiente aspecto:

Howdy!
Howdy!!!
Hello there.
Howdy!
Howdy!!!
Hello there.
Howdy!
Howdy!!!
Hello there.

Uno de los principales propósitos de las funciones es agrupar el código que se ejecuta varias veces. Sin una función definida, tendrías que copiar y pegar este código cada vez, y el programa se vería así:

print('Howdy!')
print('Howdy!!!')
print('Hello there.')
print('Howdy!')
print('Howdy!!!')
print('Hello there.')
print('Howdy!')
print('Howdy!!!')
print('Hello there.')

En general, siempre querrás evitar duplicar el código porque si alguna vez decides actualizar el código, por ejemplo, encuentras un error que necesitas arreglar tendrás que acordarte de cambiar el código en todos los lugares donde lo has copiado.

A medida que adquieras más experiencia en programación, a menudo te encontrarás depuración código, lo que significa deshacerse de código duplicado o copiado y pegado. La depuración hace que tus programas sean más cortos, más fáciles de leer y más fáciles de actualizar.

Manejo de excepciones en Python Ámbito local y global de las variables en Python La pila de llamadas de las funciones en Python Argumentos nombrados y la función print() en Python El valor None y su relación con las funciones en Python Retorno de valores y la declaración return en funciones de Python Definir, llamar, pasar argumento, parámetro en Funciones Python Declarar una función en Python con def y crearle parámetros