Unidad 03 · Python intermedio

Condiciones, bucles y estructuras

Un programa deja de ser una calculadora cuando puede decidir (condiciones), repetir (bucles) y agrupar datos (listas, tuplas, sets y diccionarios). Cada subtema incluye un mini ejemplo que puedes ejecutar aquí mismo.

3.1 · Condiciones

El programa decide con if

Una condición evalúa una expresión a True o False y ejecuta el bloque indentado solo cuando se cumple. Los dos puntos : abren el bloque y la indentación (4 espacios) define qué instrucciones dependen de la condición.

if

Ejecuta el bloque solo si la condición se cumple. Si no se cumple, Python simplemente continúa con la siguiente línea.

Mini ejemplo · if Python 3 · se ejecuta en tu navegador
carga = 18

if carga > 15:
    print("Carga alta")
    print("Revisar la seccion")

print("Fin del chequeo")
La primera ejecución descarga el intérprete (~10 MB).

carga vale 18, mayor que 15: se ejecutan las dos líneas del bloque. La última línea se imprime siempre.

if / else

else define qué ocurre cuando la condición no se cumple. Siempre hay un camino para cada caso.

Mini ejemplo · if / else Python 3 · se ejecuta en tu navegador
temperatura = 35

if temperatura > 40:
    print("Alarma de calor")
else:
    print("Temperatura dentro del rango")

print("Lectura finalizada")
La primera ejecución descarga el intérprete (~10 MB).

35 no supera 40, por eso se ejecuta la rama else.

if / elif / else

Cuando hay varios casos posibles, elif evalúa una segunda condición. Python revisa las condiciones en orden y ejecuta solo el primer bloque verdadero; si ninguno se cumple, ejecuta else.

Mini ejemplo · if / elif / else Python 3 · se ejecuta en tu navegador
nota = 85

if nota >= 90:
    print("Excelente")
elif nota >= 70:
    print("Aprobado")
else:
    print("Reprobado")
La primera ejecución descarga el intérprete (~10 MB).

85 no llega a 90, pero sí alcanza 70: se imprime Aprobado y se ignoran los demás bloques.

Comparadores: > mayor, < menor, >= mayor o igual, <= menor o igual, == igual a, != distinto de.

3.2 · Listas

Listas: colecciones ordenadas y modificables

Una lista guarda muchos valores en una sola variable, entre corchetes [ ]. Mantienen el orden, permiten duplicados y se pueden modificar después de crearlas. El índice empieza en 0. Conocerlas es el paso previo para recorrerlas con un bucle.

Mini ejemplo · Lista Python 3 · se ejecuta en tu navegador
cotas = [12.5, 13.0, 11.8]
cotas.append(12.2)

print(cotas)
print(cotas[0])
print(len(cotas))
La primera ejecución descarga el intérprete (~10 MB).

append() agrega un elemento al final; len() indica cuántos elementos tiene la lista.

  • lista[0] accede al primer elemento.
  • lista.append(x) agrega un elemento al final.
  • lista.remove(x) elimina la primera aparición de x.

3.3 · Bucles

Repetir con for y while

Un bucle ejecuta un bloque de instrucciones varias veces sin escribir el código repetidamente. for recorre una secuencia; while repite mientras una condición sea verdadera.

for

range(4) genera los valores 0, 1, 2 y 3: el bucle se ejecuta cuatro veces. También puedes recorrer los elementos de una lista directamente.

Mini ejemplo · for con range Python 3 · se ejecuta en tu navegador
for tramo in range(4):
    print("Tramo", tramo + 1)

print("Recorrido terminado")
La primera ejecución descarga el intérprete (~10 MB).

Cuatro repeticiones: una por cada valor que genera range(4).

Mini ejemplo · for sobre una lista Python 3 · se ejecuta en tu navegador
cotas = [12.5, 13.0, 11.8]
total = 0

for c in cotas:
    total = total + c

print(total)
La primera ejecución descarga el intérprete (~10 MB).

El bucle suma cada cota al total, que termina en 37.3.

while

while repite el bloque mientras la condición sea verdadera. Es obligatorio actualizar la variable de control dentro del bloque: si no, el bucle nunca termina.

Mini ejemplo · while Python 3 · se ejecuta en tu navegador
contador = 1

while contador <= 3:
    print("Vuelta", contador)
    contador = contador + 1

print("Listo")
La primera ejecución descarga el intérprete (~10 MB).

El contador crece en cada vuelta hasta llegar a 4 y salir del bucle.

Cuidado: si la condición del while nunca se vuelve falsa, el programa queda en un bucle infinito y hay que detenerlo.

3.4 · Tuplas

Tuplas: colecciones ordenadas e inmutables

Una tupla se escribe entre paréntesis ( ) y funciona igual que una lista, salvo que no se puede modificar después de creada. Es ideal para datos que no deben cambiar, como coordenadas o un par de valores relacionados.

Mini ejemplo · Tupla Python 3 · se ejecuta en tu navegador
coordenada = (19.4326, -99.1332)

print(coordenada[0])
print(coordenada[1])
print(len(coordenada))
La primera ejecución descarga el intérprete (~10 MB).

Se accede a cada valor por su índice, igual que en una lista.

Intentar modificar una tupla produce un error

Python protege la inmutabilidad de las tuplas y lanza un TypeError si intentas asignar un valor a una posición.

Mini ejemplo · Error al modificar una tupla Python 3 · se ejecuta en tu navegador
coordenada = (19.43, -99.13)
coordenada[0] = 0
La primera ejecución descarga el intérprete (~10 MB).

TypeError: 'tuple' object does not support item assignment

3.5 · Sets

Sets: colecciones sin repetidos

Un set (conjunto) se escribe entre llaves y no admite elementos repetidos ni garantiza un orden. Es perfecto para eliminar duplicados y para preguntar si un elemento pertenece a la colección.

Mini ejemplo · Set Python 3 · se ejecuta en tu navegador
materiales = {"acero", "concreto", "acero"}

print(len(materiales))
print("acero" in materiales)
print("madera" in materiales)
La primera ejecución descarga el intérprete (~10 MB).

El "acero" repetido desaparece: el set guarda 2 elementos distintos.

  • add(x) agrega un elemento (si ya existe, no cambia nada).
  • x in set comprueba si el elemento pertenece al conjunto.
  • len(set) cuenta los elementos únicos.

3.6 · Diccionarios

Diccionarios: datos con etiqueta

Un diccionario guarda pares de clave: valor. En lugar de acceder por posición, accedes por la etiqueta que le diste, lo que vuelve el código mucho más legible cuando manejas registros de datos.

Mini ejemplo · Diccionario Python 3 · se ejecuta en tu navegador
columna = {"id": "C-1", "carga": 250, "material": "concreto"}

print(columna)
print(columna["carga"])

columna["carga"] = 275
print(columna["carga"])
La primera ejecución descarga el intérprete (~10 MB).

Se lee un valor con su clave ["carga"] y se actualiza asignando un valor nuevo.

  • clave identifica al dato; no puede repetirse dentro del diccionario.
  • dic["clave"] devuelve el valor asociado.
  • dic["clave"] = nuevo_valor actualiza o agrega la clave.

¿Cuál elijo? Lista cuando el orden importa y todo es modificable; tupla cuando los datos no deben cambiar; set para eliminar duplicados; diccionario para acceder por nombre.

Siguiente paso

Ya puedes decidir, repetir y organizar tus datos.

Volver a Unidad 02: datos y operaciones