Saltar al contenido principal
eLearner.app
Módulo 1 · Lección 3 de 43/36 en el curso~10 min
Lecciones del módulo (3/4)

Condicionales: if, elif, else

Los condicionales te permiten ejecutar diferentes bloques de código según el valor de una expresión booleana. En Python se escriben con if, elif (abreviatura de "else if") y else.

La forma básica

Python
eta = 18
if eta >= 18:
    messaggio = "maggiorenne"
else:
    messaggio = "minorenne"

Nota:

  • después de la condición siempre hay dos puntos :;
  • el bloque "dentro" del if se identifica por la indentación (4 espacios);
  • no necesitas paréntesis alrededor de la condición (aunque están permitidos).

Más ramas con elif

Python
voto = 7
if voto >= 9:
    giudizio = "ottimo"
elif voto >= 7:
    giudizio = "buono"
elif voto >= 6:
    giudizio = "sufficiente"
else:
    giudizio = "insufficiente"

Las ramas elif se evalúan en el orden en que se escriben y se detienen en la primera que resulta ser verdadera.

Expresión condicional (ternaria)

Para casos simples puedes escribir todo en una línea:

Python
eta = 20
messaggio = "maggiorenne" if eta >= 18 else "minorenne"

Se lee de forma natural en inglés: "maggiorenne if eta >= 18 else minorenne".

Valores "Truthy" / "falsy"

Una condición no tiene que ser una comparación: cualquier valor puede usarse como condición. Se consideran falsos: False, None, 0, "", [], {}. Todo lo demás es verdadero.

Python
nome = "Ada"
if nome:
    saluto = f"Ciao {nome}!"
else:
    saluto = "Ciao sconosciuto!"

Expresiones condicionales (operador ternario)

Python admite un constructor if-else compacto de una sola línea, que actúa como el operador ternario que se encuentra en otros lenguajes:

Python
result = "Even" if n % 2 == 0 else "Odd"

Esto mantiene tu código conciso cuando simplemente necesitas asignar un valor basado en una condición.

Pruébalo tú

Ejercicio#python.m1.l3.e1
Intentos: 0Cargando...

Dado `number = 15`, asigna a `sign` la cadena 'positivo' si el número es > 0, 'zero' si es 0, 'negativo' en caso contrario. Evalúa `sign`.

Cargando editor...
Mostrar pista

Tres ramas: > 0, == 0, else.

Solución disponible después de 3 intentos

Ejercicio de repaso

Ejercicio#python.m1.l3.e2
Intentos: 0Cargando...

Dado `age = 20`, asigna a `category` la cadena 'maggiorenne' o 'minorenne' usando la expresión ternaria (if/else en una sola línea).

Cargando editor...
Mostrar pista

Sintaxis: value_if_true if condition else value_if_false

Solución disponible después de 3 intentos

Desafío adicional

Ejercicio#python.m1.l3.e3
Intentos: 0Cargando...

Escribe una estructura condicional que verifique si la variable `x` (inicializada en `-5`) es mayor que 0, menor que 0 o igual a 0. Asigna la cadena `'positive'`, `'negative'` o `'zero'` a `sign` según corresponda. Finalmente, evalúa `sign`.

Cargando editor...
Mostrar pista

Usa if x > 0:, elif x < 0:, y else: para manejar los tres casos.

Solución disponible después de 3 intentos