SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
Funciones
Clase 9. Python
RECUERDA PONER A GRABAR LA
CLASE
● Crear funciones
● Retornar valores
● Enviar valores
OBJETIVOS DE LA CLASE
Clase 9
Funciones
Clase 8
Manejo de archivos y
datos
Clase 10
Funciones II
CRONOGRAMA DEL CURSO
PAR O IMPAR
CURIOSOS POR LA
INFORMACIÓN
FUNCIÓN AÑO BISIESTO
MI MASCOTA RELOJ
FUNCIONES
FUNCIONES
Funciones
Cuando creamos nuestros propios programas nos damos cuenta de que muchas
de las tareas que implementamos se repiten o presentan de forma similar pero
con algunos cambios.
Entonces aparece la necesidad de agrupar este código repetido o similar, a las
agrupaciones de código se les denominan funciones las cuales se pueden
ejecutar múltiples veces gracias a un nombre único que las identifica.
>>> len(“Hola”)
4
Funciones
Para comunicarse con nuestro proceso principal las funciones pueden recibir y
devolver datos manipulados. Un ejemplo de una función que conocemos es len() que
nos permite saber la cantidad de elementos de una colección.
Recordemos que a esta función hay que pasarle el elemento
del cual queremos saber la longitud y devuelve un valor entero
con la longitud, a este valor se le denomina valor de retorno.
DEF
¿De qué se trata?
La sentencia def sirve para crear funciones definidas por el usuario.
Una definición de función es una sentencia ejecutable.
Sintaxis para una definición de función
● NOMBRE: Es el nombre de la función.
● PARÁMETROS: Como vimos en la clase 8 hay scripts con argumentos, en
las funciones, cuando recibe argumentos se les denominan parámetros.
>>> def NOMBRE(PARÁMETROS):
SENTENCIAS
RETURN [EXPRESIÓN]
Sintaxis para una definición de función
● SENTENCIAS: Es el bloque de código.
● RETURN: Es una sentencia de Python, le indica a la función que devolver
cuando llamemos a la función.
● EXPRESIÓN: Es lo que devuelve la sentencia return
Definir funciones básicas
>>> def saludar():
print(“Estoy saludando desde la
función”)
La llamamos usando: >>> saludar()
Definir funciones más avanzadas
>>> def saludar_con_nombre(nombre):
saludando = print(“Hola {}! ¿Cómo
estás?”.format(nombre))
return saludando
Y la llamamos usando: >>> saludar_con_nombre(“Juan”)
Recomendaciones
1. Utilizar minúsculas
2. Las palabras se separan con guiones bajos _
3. Utilizar nombres autoexplicativos
4. No usar nombres que no definan lo que hace la función (ejemplo
letras simples o palabras sin sentido con lo que haga la función)
Variables y Funciones
>>> def test():
variable_test = 10
print(variable_test)
>>> print(variable_test)
NameError Traceback (most recent call last)
<ipython-input-4-667d7c7a2c02> in
<module>()
----> 1 print(variable_test)
NameError: name 'variable_test' is not defined
Hay que tener en cuenta
que las variables creadas en
una función no existen
fuera de la misma.
¡PARA PENSAR!
Si las variables creadas en una función, sólo existen dentro de esa
función ¿Cómo explicarías esto?
CONTESTA EN EL CHAT DE ZOOM
>>> variable_test = 10
>>> def test():
print(variable_test)
>>> test()
El print le da prioridad a la variable dentro de la función antes que a la de
afuera.
Variables y Funciones
Sin embargo, hay que tener cuidado con
las variables fuera de las funciones al
usarlas en una función, ya que no puede
llegar a funcionar como queremos:
>>> variable_test = 10
>>> def test():
variable_test = 155
print(variable_test
)
>>> test()
��🗨
RETORNANDO VALORES
Return
Nota: Por defecto, las funciones retorna el valor None.
Las funciones pueden comunicarse con el exterior de las mismas, al proceso principal
del programa usando la sentencia return. La comunicación con el exterior se hace
devolviendo valores.
A continuación, un ejemplo de función
usando return:
>>> def saludar_con_nombre(nombre):
saludando = print(“Hola {}!
¿Cómo estás?”.format(nombre))
return saludando
Return
Es similar a un break!
Sin embargo hay que tener en cuenta que la función termina al devolver un valor,
es decir, lo que escribamos después no se ejecutará:
>>> def saludar_con_nombre(nombre):
saludando = print(“Hola {}! ¿Cómo
estás?”.format(nombre))
return saludando
print(“Hola mundo!”)
��
Return
>>> def numero():
return 6
>>> s = numero() + 5
>>> s
11
>>> a = numero() * 2 +
5
>>> a
17
Los valores o variables retornados van a seguir
siendo de un tipo de valor, por lo que podremos
trabajarlo con lo que ya hemos visto
Return
>>> a = numero() + “hola”
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and
'str'
Si vemos el tipo de dato de
número, nos indicará que es un
int:
>>> def numero():
return 6
>>> type(numero())
<class ‘int’>
Por lo que no
podremos sumar
int a str aunque
sea una función
Return
>>> variable = lista()
>>> variable[1:4]
Algo interesante que pasa si devolvemos una
colección es que podemos utilizarla
directamente desde la función y hacer uso de
las funciones internas de las colecciones:
>>> def lista():
return [1,2,3,4,5]
>>> pint(lista()[1:3])
Sin embargo, cada vez que hagamos un print a una
función la estaremos llamando, por lo que lo ideal es
asignarlo a una variable y trabajarlo desde ahí:
Return multiple
>>> def test():
return "Python", 20, [1,2,3]
>>> test()
('Python', 20, [1, 2, 3])
Una característica interesante, es
la posibilidad de devolver valores
múltiples separados por comas:
ENVIANDO VALORES
Enviando Valores a una función
Vimos como devolver valores y así comunicar una función con el exterior, ahora
enviar información desde el exterior a la función.
Para entender los conceptos más fácilmente vamos a trabajar alrededor de un
caso de estudio típico: Crear una función que sume dos números y retorne uno
en su resultado.
Enviando Valores a una función
>>> def suma(numero1, numero2):
return numero1 + numero2
Lo primero será definir una función la cual denominaremos como suma y recibirá
2 números con dos nombres como si fueran dos variables numero1 y numero2,
luego retornamos la suma entre ambos números.
Enviando Valores a una función
En este caso 7 será la variable numero1 y 5
será la variable numero2
Lo que hacemos para indicar que se reciben valores es crear dos variables
separadas por una coma. Cuando nosotros llamemos a la función,
automáticamente, se le asignarán a estas variables los números que enviemos,
siguiendo el mismo orden:
>>> r = suma(7, 5)
¡PARA PENSAR!
¿Qué ocurriría si lo hiciéramos al revés?
CONTESTA EN EL CHAT DE ZOOM
>>> r = suma(5, 7)
En este caso 5 será la variable numero1 y 7 será la variable numero2. Hay
que tener cuidado por como se pasan estos valores a la función, ya que si
fuera otra operación matemática podría dar resultados muy distintos, como
en una división o potencia.
Momentos de una función
Y la llamada
>>> def suma(numero1, numero2):
return numero1 + numero2
Tenemos la definición
>>> r = suma(7, 5)
¿Por qué es importante diferenciar?
��
Momentos de una función
>>> r = suma(7, 5)
Durante la definición de la función, las
variables o valores se denominan
parámetros:
>>> def suma(numero1, numero2):
return numero1 + numero2
Y durante la llamada se le
denominan argumentos, como los
argumentos de los scripts.
PAR O IMPAR
Realizar una función
Tiempo estimado: 3 minutos
Tiempo estimado: 3 minutos
Realizar una función llamada par_o_impar:
1. Recibirá un número por parámetro
2. Imprimirá Par si el número es par
3. Imprimirá Impar si el número es impar
4. Si se ingresa algo que no sea número debe indicar que se ingrese
un número. (Para los más audaces)
DESAFÍO DE FUNCIONES CON PARÁMETROS
EJEMPLO SUBIDO AL DRIVE: Desafío
FUNCIÓN AÑO BISIESTO
Crear una función con parámetros.
4
FUNCIÓN AÑO BISIESTO
Formato: El documento debe presentarse en Google Docs o mejor aún en
Colabs, bajo el siguiente formato: “FunciónAñoBisiesto+Apellido”.
Sugerencia: En el formulario debe estar el print de pantalla de la consola con
el ejercicio resuelto, como así también el código tipeado.
>> Consigna: Realizar una función llamada año_bisiesto:
1. Recibirá un año por parámetro
2. Imprimirá “El año año es bisiesto” si el año es bisiesto
3. Imprimirá “El año año no es bisiesto” si el año no es bisiesto
4. Si se ingresa algo que no sea número debe indicar que se ingrese un número.
2
FUNCIÓN AÑO BISIESTO
Formato: El documento debe presentarse en Google Docs bajo el siguiente
formato: “FunciónAñoBisiesto+Apellido”. Colabs,
Sugerencia: En el formulario debe estar el print de pantalla de la consola con
el ejercicio resuelto, como así también el código tipeado.
>>Información a tener en cuenta al realizar el entregable:
Se recuerda que los años bisiestos son múltiplos de 4, pero los múltiplos de 100 no lo son, aunque los
múltiplos de 400 sí. Estos son algunos ejemplos de posibles respuestas: 2012 es bisiesto, 2010 no es
bisiesto, 2000 es bisiesto, 1900 no es bisiesto.
2
¿PREGUNTAS?
¡MUCHAS GRACIAS!
Resumen de lo visto en clase hoy:
- Funciones
- Retorno de valores
- Envío de valores
OPINA Y VALORA ESTA CLASE
#DEMOCRATIZANDOLAEDUCACIÓN

Más contenido relacionado

Similar a Clase 9 - Funciones de Python para programacion

Similar a Clase 9 - Funciones de Python para programacion (20)

Metodos funciones
Metodos funcionesMetodos funciones
Metodos funciones
 
P_UNIDAD 4 FUNCIONES.pptx
P_UNIDAD 4 FUNCIONES.pptxP_UNIDAD 4 FUNCIONES.pptx
P_UNIDAD 4 FUNCIONES.pptx
 
Funciones con vectores c++
Funciones con vectores c++Funciones con vectores c++
Funciones con vectores c++
 
Practica excel
Practica excelPractica excel
Practica excel
 
Funciones y fórmulas
Funciones y fórmulasFunciones y fórmulas
Funciones y fórmulas
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenes
 
Funciones en php
Funciones en phpFunciones en php
Funciones en php
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-case
 
Funciones excel
Funciones excelFunciones excel
Funciones excel
 
Fundamentos de programación.pptx
Fundamentos de programación.pptxFundamentos de programación.pptx
Fundamentos de programación.pptx
 
Separata java script
Separata java scriptSeparata java script
Separata java script
 
otras funciones
otras funciones otras funciones
otras funciones
 
trabajo de excel
trabajo de exceltrabajo de excel
trabajo de excel
 
Funciones excel fecha y hora y otras funciones
Funciones excel fecha y hora y otras funcionesFunciones excel fecha y hora y otras funciones
Funciones excel fecha y hora y otras funciones
 
trabajos fecha
trabajos fechatrabajos fecha
trabajos fecha
 
FUNCIONES EN EXCEL PASO A PASO
FUNCIONES EN EXCEL PASO A PASOFUNCIONES EN EXCEL PASO A PASO
FUNCIONES EN EXCEL PASO A PASO
 
Cap7 2
Cap7 2Cap7 2
Cap7 2
 
Semana 3 Fundamentos de Python(Funciones y Métodos)
Semana 3   Fundamentos de Python(Funciones y Métodos)Semana 3   Fundamentos de Python(Funciones y Métodos)
Semana 3 Fundamentos de Python(Funciones y Métodos)
 
Fonciones de cadenas
Fonciones de cadenasFonciones de cadenas
Fonciones de cadenas
 
Funciones de cadena
Funciones de cadenaFunciones de cadena
Funciones de cadena
 

Clase 9 - Funciones de Python para programacion

  • 2. RECUERDA PONER A GRABAR LA CLASE
  • 3. ● Crear funciones ● Retornar valores ● Enviar valores OBJETIVOS DE LA CLASE
  • 4. Clase 9 Funciones Clase 8 Manejo de archivos y datos Clase 10 Funciones II CRONOGRAMA DEL CURSO PAR O IMPAR CURIOSOS POR LA INFORMACIÓN FUNCIÓN AÑO BISIESTO MI MASCOTA RELOJ FUNCIONES
  • 6. Funciones Cuando creamos nuestros propios programas nos damos cuenta de que muchas de las tareas que implementamos se repiten o presentan de forma similar pero con algunos cambios. Entonces aparece la necesidad de agrupar este código repetido o similar, a las agrupaciones de código se les denominan funciones las cuales se pueden ejecutar múltiples veces gracias a un nombre único que las identifica.
  • 7. >>> len(“Hola”) 4 Funciones Para comunicarse con nuestro proceso principal las funciones pueden recibir y devolver datos manipulados. Un ejemplo de una función que conocemos es len() que nos permite saber la cantidad de elementos de una colección. Recordemos que a esta función hay que pasarle el elemento del cual queremos saber la longitud y devuelve un valor entero con la longitud, a este valor se le denomina valor de retorno.
  • 8. DEF
  • 9. ¿De qué se trata? La sentencia def sirve para crear funciones definidas por el usuario. Una definición de función es una sentencia ejecutable.
  • 10. Sintaxis para una definición de función ● NOMBRE: Es el nombre de la función. ● PARÁMETROS: Como vimos en la clase 8 hay scripts con argumentos, en las funciones, cuando recibe argumentos se les denominan parámetros. >>> def NOMBRE(PARÁMETROS): SENTENCIAS RETURN [EXPRESIÓN]
  • 11. Sintaxis para una definición de función ● SENTENCIAS: Es el bloque de código. ● RETURN: Es una sentencia de Python, le indica a la función que devolver cuando llamemos a la función. ● EXPRESIÓN: Es lo que devuelve la sentencia return
  • 12. Definir funciones básicas >>> def saludar(): print(“Estoy saludando desde la función”) La llamamos usando: >>> saludar()
  • 13. Definir funciones más avanzadas >>> def saludar_con_nombre(nombre): saludando = print(“Hola {}! ¿Cómo estás?”.format(nombre)) return saludando Y la llamamos usando: >>> saludar_con_nombre(“Juan”)
  • 14. Recomendaciones 1. Utilizar minúsculas 2. Las palabras se separan con guiones bajos _ 3. Utilizar nombres autoexplicativos 4. No usar nombres que no definan lo que hace la función (ejemplo letras simples o palabras sin sentido con lo que haga la función)
  • 15. Variables y Funciones >>> def test(): variable_test = 10 print(variable_test) >>> print(variable_test) NameError Traceback (most recent call last) <ipython-input-4-667d7c7a2c02> in <module>() ----> 1 print(variable_test) NameError: name 'variable_test' is not defined Hay que tener en cuenta que las variables creadas en una función no existen fuera de la misma.
  • 16. ¡PARA PENSAR! Si las variables creadas en una función, sólo existen dentro de esa función ¿Cómo explicarías esto? CONTESTA EN EL CHAT DE ZOOM >>> variable_test = 10 >>> def test(): print(variable_test) >>> test()
  • 17. El print le da prioridad a la variable dentro de la función antes que a la de afuera. Variables y Funciones Sin embargo, hay que tener cuidado con las variables fuera de las funciones al usarlas en una función, ya que no puede llegar a funcionar como queremos: >>> variable_test = 10 >>> def test(): variable_test = 155 print(variable_test ) >>> test() ��🗨
  • 19. Return Nota: Por defecto, las funciones retorna el valor None. Las funciones pueden comunicarse con el exterior de las mismas, al proceso principal del programa usando la sentencia return. La comunicación con el exterior se hace devolviendo valores. A continuación, un ejemplo de función usando return: >>> def saludar_con_nombre(nombre): saludando = print(“Hola {}! ¿Cómo estás?”.format(nombre)) return saludando
  • 20. Return Es similar a un break! Sin embargo hay que tener en cuenta que la función termina al devolver un valor, es decir, lo que escribamos después no se ejecutará: >>> def saludar_con_nombre(nombre): saludando = print(“Hola {}! ¿Cómo estás?”.format(nombre)) return saludando print(“Hola mundo!”) ��
  • 21. Return >>> def numero(): return 6 >>> s = numero() + 5 >>> s 11 >>> a = numero() * 2 + 5 >>> a 17 Los valores o variables retornados van a seguir siendo de un tipo de valor, por lo que podremos trabajarlo con lo que ya hemos visto
  • 22. Return >>> a = numero() + “hola” Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str' Si vemos el tipo de dato de número, nos indicará que es un int: >>> def numero(): return 6 >>> type(numero()) <class ‘int’> Por lo que no podremos sumar int a str aunque sea una función
  • 23. Return >>> variable = lista() >>> variable[1:4] Algo interesante que pasa si devolvemos una colección es que podemos utilizarla directamente desde la función y hacer uso de las funciones internas de las colecciones: >>> def lista(): return [1,2,3,4,5] >>> pint(lista()[1:3]) Sin embargo, cada vez que hagamos un print a una función la estaremos llamando, por lo que lo ideal es asignarlo a una variable y trabajarlo desde ahí:
  • 24. Return multiple >>> def test(): return "Python", 20, [1,2,3] >>> test() ('Python', 20, [1, 2, 3]) Una característica interesante, es la posibilidad de devolver valores múltiples separados por comas:
  • 26. Enviando Valores a una función Vimos como devolver valores y así comunicar una función con el exterior, ahora enviar información desde el exterior a la función. Para entender los conceptos más fácilmente vamos a trabajar alrededor de un caso de estudio típico: Crear una función que sume dos números y retorne uno en su resultado.
  • 27. Enviando Valores a una función >>> def suma(numero1, numero2): return numero1 + numero2 Lo primero será definir una función la cual denominaremos como suma y recibirá 2 números con dos nombres como si fueran dos variables numero1 y numero2, luego retornamos la suma entre ambos números.
  • 28. Enviando Valores a una función En este caso 7 será la variable numero1 y 5 será la variable numero2 Lo que hacemos para indicar que se reciben valores es crear dos variables separadas por una coma. Cuando nosotros llamemos a la función, automáticamente, se le asignarán a estas variables los números que enviemos, siguiendo el mismo orden: >>> r = suma(7, 5)
  • 29. ¡PARA PENSAR! ¿Qué ocurriría si lo hiciéramos al revés? CONTESTA EN EL CHAT DE ZOOM >>> r = suma(5, 7)
  • 30. En este caso 5 será la variable numero1 y 7 será la variable numero2. Hay que tener cuidado por como se pasan estos valores a la función, ya que si fuera otra operación matemática podría dar resultados muy distintos, como en una división o potencia.
  • 31. Momentos de una función Y la llamada >>> def suma(numero1, numero2): return numero1 + numero2 Tenemos la definición >>> r = suma(7, 5) ¿Por qué es importante diferenciar? ��
  • 32. Momentos de una función >>> r = suma(7, 5) Durante la definición de la función, las variables o valores se denominan parámetros: >>> def suma(numero1, numero2): return numero1 + numero2 Y durante la llamada se le denominan argumentos, como los argumentos de los scripts.
  • 33. PAR O IMPAR Realizar una función Tiempo estimado: 3 minutos
  • 34. Tiempo estimado: 3 minutos Realizar una función llamada par_o_impar: 1. Recibirá un número por parámetro 2. Imprimirá Par si el número es par 3. Imprimirá Impar si el número es impar 4. Si se ingresa algo que no sea número debe indicar que se ingrese un número. (Para los más audaces) DESAFÍO DE FUNCIONES CON PARÁMETROS EJEMPLO SUBIDO AL DRIVE: Desafío
  • 35. FUNCIÓN AÑO BISIESTO Crear una función con parámetros. 4
  • 36. FUNCIÓN AÑO BISIESTO Formato: El documento debe presentarse en Google Docs o mejor aún en Colabs, bajo el siguiente formato: “FunciónAñoBisiesto+Apellido”. Sugerencia: En el formulario debe estar el print de pantalla de la consola con el ejercicio resuelto, como así también el código tipeado. >> Consigna: Realizar una función llamada año_bisiesto: 1. Recibirá un año por parámetro 2. Imprimirá “El año año es bisiesto” si el año es bisiesto 3. Imprimirá “El año año no es bisiesto” si el año no es bisiesto 4. Si se ingresa algo que no sea número debe indicar que se ingrese un número. 2
  • 37. FUNCIÓN AÑO BISIESTO Formato: El documento debe presentarse en Google Docs bajo el siguiente formato: “FunciónAñoBisiesto+Apellido”. Colabs, Sugerencia: En el formulario debe estar el print de pantalla de la consola con el ejercicio resuelto, como así también el código tipeado. >>Información a tener en cuenta al realizar el entregable: Se recuerda que los años bisiestos son múltiplos de 4, pero los múltiplos de 100 no lo son, aunque los múltiplos de 400 sí. Estos son algunos ejemplos de posibles respuestas: 2012 es bisiesto, 2010 no es bisiesto, 2000 es bisiesto, 1900 no es bisiesto. 2
  • 39. ¡MUCHAS GRACIAS! Resumen de lo visto en clase hoy: - Funciones - Retorno de valores - Envío de valores
  • 40. OPINA Y VALORA ESTA CLASE