En la anterior entrada vimos la lectura y escritura de archivos txt usando una función. Adelantábamos que una función contiene un bloque de código pero en esta lección veremos que nos puede aportar algo más.
Funciones en Python
Las funciones forman una parte básica de la sintaxis en todos los lenguajes de programación. Hasta ahora hemos ido poniendo las instrucciones línea a línea para que se ejecuten sistemáticamente, pero al querer hacer la misma instrucción dos veces teníamos que volver a escribir lo mismo, ensuciando el código y volviendo un poco más ilegible nuestro preciado código fuente.
Las funciones se definen con def nombreFuncion(): y siguiendo con su tabulación el código que formaría dicha función. Recordemos que en Python con respecto a otros lenguajes de programación se eliminan las llaves, por lo que para saber que parte está dentro de una función, if o bucle se necesita tabular. Veamos un ejemplo:
Aclaradas las tabulaciones que necesitamos para indicar que está dentro de la función y que no, vamos a ver como se definen las funciones
Cada vez que queramos sumar 3+5 podríamos llamar a la función sumar() e imprimiría el resultado automáticamente. Podría servirnos pero para realizar diferentes sumas necesitaríamos crear más funciones. Esto se soluciona usando los argumentos que las funciones pueden recibir entre sus paréntesis (función(argumentos)). Posteriormente devuelven el resultado con la palabra return. Veamos un ejemplo gráfico para ver su sencillez:
Como vemos, indicándole el número de argumentos que recibe la función(separados por una coma cada vez) podemos hacer con ellos lo que queramos. He puesto a y b pero podría haber puesto cualquier cosa para luego indicar en su interior que deben hacer. Veamos un ejemplo con 4 argumentos:
Campo de las variables
Algo que suele llevar a la confusión es el alcance de las variables cuando entran a jugar las funciones, pero que prestando un poco de atención no debería haber mayor problema. Solo tienen dos detalles:
– Las variables declaradas fuera de las funciones pueden ser usadas dentro de éstas. Ejemplo:
–Las variables declaradas dentro de las funciones no pueden ser usadas fuera de éstas. Ejemplo:
Para solucionar ésta última cuestión podemos hacer la variable global, la cual se podría usar la variable fuera de la función en la que fue creada. Ejemplo:
En teoría la línea 9 dice que debe imprimir la variable nombre que contiene ‘Pepe‘, pero al hacer la variable global dentro de la función y actualizar su contenido a ‘Juan‘, termina imprimiendo éste. Es importante que ejecutemos la función (línea 8 del ejemplo) para que se ejecute su interior porque de lo contrario ocurriría esto:
Resumen
Resumiendo, las funciones pueden retornar valores o no (return) y pueden recibir argumentos o no. Es importante tener controlado el alcance de las variables en todo momento y acostumbrarnos a agrupar código usando las funciones.
Un salu2!
Curso de Python I Curso de Python II Curso de Python III Curso de Python IV Curso de Python V Curso de Python VI Curso de Python VII Curso de Python VIII Curso de Python IX Curso de Python X Curso de Python XI Curso de Python XII Curso de Python XIII Curso de Python XIV