A vegades ens pot interessar gestionar els errors per tal que no provoquin l'turada del programa. Per fer-ho tenim les instruccions try i except.
L'estructura seria la següent:
try:
# Instruccions que poden provocar algun error
except:
# Instruccions que volem que es facin en cas d'error
Imaginem que tenim un sensor de temperatura i humitat connectat a D0. El programa bàsic, sense contemplar errors, és:
import board import time import adafruit_dht
rht = adafruit_dht.DHT22(board.D0)
while True:
print("Temperatura: ", rht.temperature, " C")
print("Humitat: ", rht.humidity, " %")
time.sleep(1)
Si no hi ha cap sensor connectat a la pota D0 el programa s'aturarà i donarà un error. Fent un petit canvi aconseguirem que no s'aturi i ens doni un avís.
import board import time import adafruit_dht
rht = adafruit_dht.DHT22(board.D0)
try:
print("Temperatura: ", rht.temperature, " C")
print("Humitat: ", rht.humidity, " %")
except:
print("Alguna cosa falla!")
time.sleep(1)
També podem fer que ens mostri els missatges d'error generats.
import board import time import adafruit_dht
rht = adafruit_dht.DHT22(board.D0)
try:
print("Temperatura: ", rht.temperature, " C")
print("Humitat: ", rht.humidity, " %")
except RuntimeError as err:
print(err)
time.sleep(1)
La variable err serà on es guardarà el missatge d'error generat.

Esta obra de Oriol Boix está licenciada bajo una licencia no importada Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0.