if executar només si es compleix una condició
Sintaxi
if condició:
# s'executa només si condició és certa
Exemple
nota = 7
if nota >= 5:
print("Aprovat")
A Python el bloc es marca amb indentació, no amb claus. Si nota >= 5 és certa s'executa la línia indentada; si és falsa, es continua després sense fer res.
else l'alternativa
Exemple
nota = 3
if nota >= 5:
print("Aprovat")
else:
print("Suspès")
elif encadenar diverses condicions
Exemple
nota = 6
if nota >= 9:
print("Excel·lent")
elif nota >= 7:
print("Notable")
elif nota >= 5:
print("Aprovat")
else:
print("Suspès")
Es comproven en ordre. En el moment que una és certa, s'executa el seu bloc i ja no es comprova cap més condició de la cadena.
Operador ternari
Python no té ?: com C, però té una expressió condicional pròpia que fa el mateix.
Sintaxi
valor_si_certa if condició else valor_si_falsa
Exemple
a = 5 b = 8 max_valor = a if a > b else b print(max_valor)
Es llegeix gairebé com en llenguatge natural: "a, si a és més gran que b; si no, b". Aquí a > b és fals, així que max_valor val 8.
try / except — gestionar errors sense aturar el programa
Algunes operacions poden fallar en temps d'execució (dividir per zero, convertir text que no és un número...). Sense res més, un error d'aquest tipus atura el programa. Amb try/except el pots capturar i continuar.
Sintaxi
try:
# codi que podria fallar
except TipusDError:
# què fer si falla exactament aquest error
Exemple
a = 10
b = 0
try:
resultat = a / b
print(resultat)
except ZeroDivisionError:
print("No es pot dividir per zero")
Com b val 0, la línia a / b provoca un ZeroDivisionError. En aquest instant l'execució salta directament al bloc except que coincideix amb el tipus d'error (sense arribar a la línia print(resultat)), i el programa continua amb normalitat.
Mira quin camí pren el programa
Tria una variant i avança pas a pas per veure quina condició es compleix, quin bloc s'executa, i què passa quan hi ha un error.
Codi
Variables
| Nom | Valor |
|---|
Terminal
Exercicis d'autoavaluació
Cada exercici es genera amb valors nous a l'atzar. Llegeix el codi, pensa quina serà la sortida per terminal i comprova-ho.
Quina serà la sortida per terminal d'aquest programa?