Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2.1 Identación
Para hablar de estructuras de control de flujo en Python, es imprescindible primero,
hablar de identación.
¿Qué es la identación? En un lenguaje informático, la identación es lo que la
sangría al lenguaje humano escrito (a nivel formal). Así como para el lenguaje
formal, cuando uno redacta una carta, debe respetar ciertas sangrías, los lenguajes
informáticos, requieren una identación.
No todos los lenguajes de programación, necesitan de una identación, aunque sí,
se estila implementarla, a fin de otorgar mayor legibilidad al código fuente. Pero en
el caso de Python, la identación es obligatoria, ya que, de ella dependerá su
estructura.
1
Introducción a Python / Ing. Carlos Julio Pardo
2
Introducción a Python / Ing. Carlos Julio Pardo
if (si), else (sino) y elif (sino, si) es una contracción de else if.
if condición:
aquí van las órdenes que se ejecutan si la condición es cierta
y que pueden ocupar varias líneas
else:
y aquí van las órdenes que se ejecutan si la condición es falsa
y que también pueden ocupar varias líneas
if condición_1:
bloque 1
elif condición_2:
bloque 2
elif condición_3:
bloque 3
else:
bloque 4
3
Introducción a Python / Ing. Carlos Julio Pardo
En el ejemplo anterior creamos una variable edad que es igual a un valor numérico
ingresado por teclado. Luego utilizamos una condición if vara evaluar si edad es
mayor o igual a 18, si esto se cumple se ejecuta el código del if, si no, se ejecuta el
código del else. Pueden cambiar el valor de la variable a 15 para ver cómo se
comporta el programa.
2) Definir estado de semáforo, si está en verde, cruzar la calle. Si no, esperar.
semaforo = "verde"
if semaforo == "verde":
print ("Cruzar la calle")
else:
print ("Esperar")
4
Introducción a Python / Ing. Carlos Julio Pardo
EJERCICIOS
1. Escribe un programa que pida el año actual y un año cualquiera y que escriba
cuántos años han pasado desde ese año o cuántos años faltan para llegar a
ese año:
>>¿En qué año estamos?: 2002
>>Escribe un año cualquiera: 2014
>>Para llegar al año 2014 faltan 12 años.
2. Escribe un programa que pida dos números y que escriba cuál es el menor
y cuál el mayor o que escriba que son iguales:
>>Comparador de números
>>Escribe un número: 23
>>Escribe otro número: 14.5
>>Menor: 14.5
>>Mayor: 23.0
>>Comparador de números
>>Escribe un número: 5.0
>>Escribe otro número: 5
>>Son iguales
3. Escribe un programa que pida tres números y que escriba si son los tres
iguales, si hay dos iguales o si son los tres distintos.
>>Escribe un número: 6
>>Escribe otro número: 6.5
>>Escribe otro número más: 6
>>Has escrito uno de los números dos veces
5
Introducción a Python / Ing. Carlos Julio Pardo
>>Escribe un número: 4
>>Escribe otro número: 5
>>Escribe otro número más: 6
>>Los tres números que has escrito son distintos
a b Solución
0 4 Sin solución
3 15 Una solución: -5
0 0 Todos los números son solución
6
Introducción a Python / Ing. Carlos Julio Pardo
▪ El bucle while
▪ El bucle for
while condición:
cuerpo de bucle que se repetirá mientras la condición
sea correcta.
Ejemplo: Mientras que día sea menor o igual a 7, imprimir la frase "Inventario de dia
de la semana ".
dia = 1
while dia <= 31:
print ("Analisis de dia de la semana", str(dia))
dia += 1
7
Introducción a Python / Ing. Carlos Julio Pardo
Podrás notar que en cada iteración, incrementamos el valor de la variable dia que
condiciona el bucle. Si no lo hiciéramos, esta variable siempre sería igual a 1 y el
bucle se ejecutaría de forma infinita, ya que la condición (dia <= 31) siempre se
estaría cumpliendo.
Pero ¿Qué sucede si el valor que condiciona la iteración no es numérico y no puede
incrementarse? En ese caso, podremos utilizar una estructura de control
condicional, anidada dentro del bucle, y frenar la ejecución cuando el condicional
deje de cumplirse, con la palabra clave reservada break:
while True:
nombre = input("Indique su nombre: ")
if nombre:
break
El bucle anterior, incluye un condicional anidado que verifica si la variable nombre
es verdadera (solo será verdadera si el usuario tipea un texto en pantalla cuando el
nombre le es solicitado). Si es verdadera, el bucle para (break). Sino, seguirá
ejecutándose hasta que el usuario, ingrese un texto en pantalla.
En los ejemplos anteriores, nombre y color, son dos variables declaradas en tiempo
de ejecución (es decir, se declaran dinámicamente durante el bucle), asumiendo
como valor, el de cada elemento de la lista (o tupla) en cada iteración.
Con el bucle for es posible emular la estructura while,
8
Introducción a Python / Ing. Carlos Julio Pardo
dia = 1
for dia in range(1,7):
print ("Analisis de dia de la semana", str(dia))
dia += 1
2.3.3.1 Acumulador
Este es un ejemplo de programa con acumulador:
suma = 0
for i in range(10):
suma = suma + i
print ("La suma de los números de 0 a 10 es", suma)
2.3.3.2 Contador
Este es un ejemplo de programa con contador:
cuenta = 0
for i in range(1000):
if i%7 == 0:
cuenta = cuenta + 1
print ("Entre 0 y 1000 hay", cuenta, "múltiplos de 7")
9
Introducción a Python / Ing. Carlos Julio Pardo
EJERCICIOS
>>Escribe un numero: 5
>>El factorial de 5 es: 120
10
Introducción a Python / Ing. Carlos Julio Pardo
8. Escribe un programa que te pida números cada vez más grandes y los
guarde en una lista. Para terminar de escribir números, escribe un número
que no sea mayor que el anterior. El programa termina escribiendo la lista de
números.
>>Escribe un número: 6
>>Escribe un número mayor que 6: 10
>>Escribe un número mayor que 10: 12
>>Escribe un número mayor que 12: 9
>>Los números que has escrito son [6, 10, 12]
11