Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Introducción a la programación con Python (Parte II) Clase 03. Data Science ¿DUDAS DEL ON-BOARDING? MIRALO AQUI https://coderhouse.typeform.com/to/nRSvWstq#camada=xxxxx&studentemail=xxxxx https://coderhouse.typeform.com/to/nRSvWstq#camada=xxxxx&studentemail=xxxxx RECUERDA PONER A GRABAR LA CLASE ● Comprender las nociones básicas de la programación estructurada con Python. OBJETIVOS DE LA CLASE MAPA DE CONCEPTOS MAPA DE CONCEPTOS CLASE 3 Nociones básicas de Programación Funciones Estructuras Tipos de datos Basics: Variables, asignación, operaciones Clase 4 Programación con arrays: introducción a NumPy CRONOGRAMA DEL CURSO PROBANDO ESTRUCTURAS PRÁCTICA DE ARRAYS CON NUMPY PRÁCTICA CON FUNCIONES Clase 2 Introducción a la programación con Python (Parte I) NOCIONES BÁSICAS Clase 3 Introducción a la programación con Python (Parte II) NOCIONES BÁSICAS DE PROGRAMACIÓN ¿Repasamos? En la primera parte de Introducción a la programación Python vimos los siguientes temas: ● Objetos y punteros ● Operadores ○ Operadores aritméticos. ○ Operadores de asignaciones ○ Operadores de comparación ○ Operadores de identidad y pertenencia ESTRUCTURAS DE CONTROL: FOR, WHILE, IF ● Las estructuras de control sirven para dar claridad y orden al código. ● Si hay que hacer operaciones repetitivas, estas estructuras nos ayudan a organizarlas. ● En esta ocasión veremos las estructuras más comunes: ○ For ○ While ○ If ¿Qué son y para qué sirven las estructuras de control? Estructura FOR ● Repite un comando una cantidad fija de veces for i in range(1,10): print(i) # muestra los números del 1 al 9 for i in [1,4,6,2]: print(i) # muestra los números de la lista Estructura WHILE ● Repite una secuencia de comandos “mientras” una condición se cumpla. Cuando la condición no se cumple más, termina la repetición. i = 1 while i < 10: # el código luego de los dos puntos se ejecuta print(i) # mientras i es menor a 10. i += 1 # cuando i llega a 10 termina la ejecución Estructura condicional (IF) ● Si se cumple una condición, se ejecuta una secuencia de comandos. En otro caso, se ejecuta otra. ● Pueden manejarse más de dos opciones. x = 1 if x < 10: # Pregunto si x es menor a 10 print(x, "es menor a 10") # Si es así muestro mensaje elif x > 10: # Si no es así, pregunto si x es mayor print(x, "es mayor a 10") # a 10 y si es así muestro mensaje else: # Si nada de lo anterior se print(x, "es 10") # cumple, ejecuto esto PROBANDO ESTRUCTURAS EN PYTHON Aplicando estructuras en Python en grupos. PROBANDO ESTRUCTURAS EN PYTHON FOR - IF - WHILE En este desafío les proponemos dos problemas reales que deberán ser resueltos utilizando las estructuras aprendidas de programación en Python en una notebook. Trabajaremos en grupos de de 4 ó 5 personas. Tiempo estimado: 15 minutos. PROBANDO ESTRUCTURAS EN PYTHON FOR - IF - WHILE - Ejercicio 1: El factorial x! se define como el producto de todos los números desde 1 a x. Escribir el código para calcular el factorial de 5. - Ejercicio 2: J. B. Büttner, maestro de un colegio alemán, castigó a todos los niños poniéndoles como tarea sumar los 100 primeros números naturales para tenerlos entretenidos y callados un buen rato. Carl Friedrich Gauss obtuvo la respuesta casi de inmediato, encontrando una fórmula para la suma de una serie de números naturales (la fórmula es otra historia…). Hacer un programa que calcule la suma de los primeros 100 números naturales. PROBANDO ESTRUCTURAS EN PYTHON FOR - IF - WHILE Ejercicio 1: Ejercicio 2: fac = 1 for i in range(1,6): # print(fac) fac *= i fac suma = 0 for i in range(1,101): print(i, suma) suma += i suma Funciones, argumentos y retorno Funciones ● Para trabajar profesionalmente en programación, el código que se usa en forma repetitiva se organiza en funciones. ● Puede hacerse una analogía con una función matemática y = f(x): la función f recibe un argumento x, ejecuta una serie de comandos y devuelve un valor y. Funciones ● Las funciones tienen al menos 3 elementos: ○ El nombre de la función ○ Cero o más argumentos (variables de entrada) ○ Un valor de retorno (salida de la función) Funciones print(x) # función nativa de Python que muestra el valor de x print(x,y) # print puede mostrar los valores de más de una variable def suma(x,y): # aquí definimos una función propia con argumentos x e y z = x + y # la función suma los valores x e y, y asigna resultado a z return z # el valor de retorno es z res = suma(2,3) # aplicamos la función definida a los números 2 y 3 # y guardamos el resultado en res print (res) # mostramos el resultado: 2 + 3 = 5 Tipos de datos en Python Tipos de datos ● El tipo de dato define qué tipos de operaciones se puede hacer con él. Por ejemplo, un número se puede sumar, pero un texto no. ● Python define dos grandes grupos de tipos de datos: simples y estructurados. ● Podemos saber el tipo de un dato x con la función type(x) Tipos de datos ● Los tipos de datos simples están formados por un solo objeto de un solo tipo Tipo Ejemplo Definición int x = 1 Enteros float x = 1.0 Punto flotante (decimales) complex x = 1 + 2j Complejos (parte real e imaginaria) bool x = True Booleanos o lógicos: verdadero / falso str x = 'abc' Texto NoneType x = None Tipo especial para indicar valores nulos Tipos de datos ● Los tipos de datos estructurados están formados por más de un objeto ● El más utilizado es list, pero hay otras formas de trabajar con ellos que veremos más adelante Tipo Ejemplo Definición list [1, 2, 3] Lista ordenada tuple (1, 2, 3) Lista ordenada inmutable dict {'a':1, 'b':2, 'c':3} Diccionario: conjunto de pares clave:valor set {1, 2, 3} Conjunto, a la manera de un conjunto matemático Mutabilidad ● La estructura list es mutable porque permite que sus elementos sufran modificaciones una vez definida. ● Por otro lado, las estructuras inmutables como las tuplas (tuple) no admiten esta reasignación de elementos en tiempo de ejecución del programa. ● La estructura dict, por su parte, es mutable en sus valores. Sin embargo, es inmutable en sus claves. PRÁCTICA CON FUNCIONES Iniciaremos la práctica de escritura de nuestras primeras funciones con Python 1 PRÁCTICA CON FUNCIONES Formato: Entregar un archivo con formato .ipynb. Debe tener el nombre “Funciones+Apellido”. Sugerencia: Preparar el código y probar los resultados con distintas entradas. >> Consigna: 1. Escribir una función para calcular el factorial de un número cualquiera. 2. Escribir una función para calcular la suma de una serie comenzando por un número cualquiera y terminando en otro número que debe ser mayor al primero. >>Aspectos a incluir en el entregable: El código debe estar hecho en un notebook y debe estar probado. Incluir una prueba que demuestre que el código funciona. >>Ejemplo a continuación: def suma(x,y): # Aquí definimos una función “suma”. z = x + y # Esto es lo que pide el ejercicio return z res = suma(2,3) # Aquí probamos la función suma con dos números concretos # Esta es la prueba para verificar que el código funciona print (res) >>Ejemplo ¿QUIERES SABER MÁS? TE DEJAMOS MATERIAL AMPLIADO DE LA CLASE ● Guía de instalación de Python con Miniconda, Jupyter notebooks y Google Colab | Guillermo Leale Disponible en nuestro repositorio. https://drive.google.com/file/d/1mSw5pOrrmIpgGUwFRtACxXjmqszYJMz0/view?usp=sharing https://drive.google.com/file/d/1mSw5pOrrmIpgGUwFRtACxXjmqszYJMz0/view?usp=sharing ¿PREGUNTAS? ¡MUCHAS GRACIAS! Resumen de lo visto en clase hoy: - Nociones básicas: Estructuras de Control, Operadores y Funciones. OPINA Y VALORA ESTA CLASE #DEMOCRATIZANDOLAEDUCACIÓN
Compartir