Want to create interactive content? It’s easy in Genially!

Get started free

Estructuras Cíclicas de Control en Python

Miguel Ángel Casillas Araiza

Created on October 11, 2020

Tema de la materia de Programación de la MCI

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

Estructuras cíclicas de Control

Aquí se explorarán las diferentes formas de control cíclico que pueden efectuarse en python y otra estructura de control que será emulada.

M.C. Miguel Ángel Casillas Araiza.

7 enero 2022

ÍNDICE

Generadores

Iteradores

Ciclo For

Aplicaciones en Python

Ciclo Do While

Ciclo while

Mapa Conceptual

Conclusiones

Fuentes de Información

Gracias

10

Generadores en Python

¿Que es un Generador?

  1. Un generador es una función que produce una secuencia de resultados en lugar de un único valor. Es decir, cada vez que llamemos a la función nos darán un nuevo resultado.
  2. Para construir generadores sólo tenemos que usar la orden yield. Esta orden devolverá un valor (igual que hace return) pero, además, pasivará la ejecución de la función hasta la próxima vez que le pidamos un valor.

Tomado de (SimuladorQ,s.f.)

(Suárez, 2016)

Generadores

  • Una característica importante de los generadores es que tanto las variables locales como el punto de inicio de la ejecución se guardan automáticamente entre las llamadas sucesivas que se hagan al generador, es decir, a diferencia de una función común, una nueva llamada a un generador no inicia la ejecución al principio de la función, sino que la reanuda inmediatamente después del punto donde se encuentre la última declaración yield (que es donde terminó la función en la última llamada).
  • Los generadores son una forma sencilla y potente de iterador. Un generador es una función especial que produce secuencias completas de resultados en lugar de ofrecer un único valor. En apariencia es como una función típica pero en lugar de devolver los valores con return lo hace con la declaración yield. Hay que precisar que el término generador define tanto a la propia función como al resultado que produce.

Tomado de (Suárez, 2016)

En un generador la declaración yield puede aparecer en varías líneas e incluso dentro de un bucle. El intérprete Python producirá una excepción de tipo StopIteration si encuentra el comando return durante la ejecución de un generador.

(SimuladorQ, s.f.)

(Suárez, 2016)

Iteradores en Python

Iteradores

En Python existen diferentes estructuras de datos que pueden ser recorridas secuencialmente mediante el uso de bucles. Estos objetos llamados iteradores, básicamente, son secuencias, contenedores y ficheros de texto. La declaración for/in se utiliza con frecuencia para recorrer los elementos de distintos tipos de iteradores: los caracteres de una cadena, los elementos de una lista o una tupla, las claves y/o valores de un diccionario e incluso las líneas de un archivo.

(Suárez, 2016)

La función iter()

La función iter() se suele emplear para mostrar cómo funciona en realidad un bucle implementado con for/in. Antes del inicio del bucle la función iter() retorna el objeto iterable con el método subyacente __iter__(). Una vez iniciado el bucle, el método __next__() permite avanzar, en cada ciclo, al siguiente elemento hasta alcanzar el último. Cuando el puntero se encuentra en el último elemento si se ejecuta nuevamente el método __next__() el programa produce la excepción StopIteration:

(Suárez, 2016)

Implementando una clase para iterar cadenas

Los métodos __next__() y __iter__() permiten declarar clases para crear iteradores a medida.

(Suárez, 2016)

La función range()

Cuando se desea ejecutar un bucle un número de veces determinado se suele utilizar la función range() que genera un rango de valores numéricos iterables que no necesitan ser almacenados en una lista o tupla.

(Suárez, 2016)

Ciclo for en Python

Ciclo for

Para iterar a través de un rango del 1 al 10.

Para iterar sobre una lista.

Si se quiere iterar sobre un diccionario.

Otra forma de iterar un diccionario.

(Coding or not, s.f.)

Ciclo while en Python

Ciclo while

El ciclo while permite ejecutar un bloque de instrucciones mientras se cumpla la condición dada. Primero comprueba que en efecto se cumple la condición dada y entonces, ejecuta el segmento de código correspondiente hasta que la condición no se cumpla.

(Coding or not, s.f.)

Ciclo do while en Python

Implementación de la estructura de control cíclica: Do While en Python, ya que no existe como tal en el lenguaje.

Aplicaciones de ciclos en Python

Aplicaciones de Ciclos en Python

Implemente el algoritmo de Euclides para determinar el MCD.

Calculel interés simpe de un capital y la carrida financiera.

Calcule el factorial de un número.

Lea un arhivo de tipo texto TXT y forme un diccionario de palabras.

Introduzca un número y determine si es primo o no lo es.

Determine el interés compuesto de un capital invertido y la corrida financiera.

(Sanjuán, 2017)

Calcular el factor de fricción f usando la ecuación de Prandtl-Colebrook..

VÍDEO

Obseerve el video para la determinación del factor de fricción f, en él se explica empleando Excel, sin embargo hay que desarrollar el programa para calcularlo empleando Python.

(Sanjuán, 2017)

Mapa Conceptual de Algoritmo, que abarca estructuras de control cíclico.

Un mapa Conceptual Algoritmo, que abarca estructuras de control cíclico.

(Valencia, s.f)

Conclusiones

Conclusiones

Los ciclos son muy importantes para la implentación de los algoritmos en programción de computadoras.

Existen diferentes estructura de de control de ciclos de la programación en Python: generadores, iteradores, for, while, do while.

Las estructuras de control cíclicas emplean operadores de tipo relacionales y lógicos.

Se prueban en cada iteración las condiciones planteadas para terminar un ciclo o es posible forzar la salida de un ciclo con la sentencia break.

Fuentes de información

Fuentes de Información.

SimuladorQ. Generadores con Python (Sin fecha). Recuperado el 11 Octubre 2020 de https://simuladorq.readthedocs.io/GeneradoresPython/

25%

Suárez Lamadrid A. y Suárez Jiménez A. (2016). Python 3 para Impacientes. Iteradores y Generadores. Recuperado el 11 Octubre 2020 de https://python-para-impacientes.blogspot.com/2016/11/iteradores-y-generadores.html

25%

25%

Coding or not. 07 Python ciclos (ejemplos). (Sin fecha). Recuperado el 11 Octubre 2020 de https://codingornot.com/07-python-ciclos-ejemplos

Fuentes de Información.

Brito Rodríguez L., (Sin fecha). Wordpress. Ecuación de Antoine. Recuperado el 11 Octubre 2020 de https://misapuntesyacimientos.wordpress.com/2016/07/12/ecuacin-de-antoine/

10%

Valencia Osorio A., (Sin Fecha). Estructuras Cíclicas. Formación en Ambientes Viruales de Aprendizaje. Servicio Nacional de Aprendizaje. [PDF]

5%

Sanjuán Pellicer, N., (4 octubre 2017). Cálculos Iterativos con Excel. Método de sustitución directa. [Archivo de Video]. Recuperado de https://www.youtube.com/watch?v=M66IFiRFQGw

10%

¡GRACIAS!

Programación de la MCI