En aquest tema, explorarem diverses eines de flux de control que ens permeten gestionar el comportament del nostre codi de manera més eficient i flexible. Aquestes eines inclouen les sentències break, continue, i pass, així com l'ús de la instrucció else amb bucles. Aquests conceptes són fonamentals per escriure codi Python més clar i efectiu.

  1. Sentència break

La sentència break s'utilitza per sortir d'un bucle abans que aquest hagi completat totes les seves iteracions. És especialment útil quan es compleix una condició específica i ja no és necessari continuar amb el bucle.

Exemple:

for i in range(10):
    if i == 5:
        break
    print(i)

Explicació:

  • Aquest codi imprimeix els números del 0 al 4.
  • Quan i és igual a 5, la sentència break s'executa i el bucle es trenca.

  1. Sentència continue

La sentència continue s'utilitza per saltar l'iteració actual del bucle i passar a la següent iteració. És útil quan es vol ometre una part del codi dins del bucle per a una condició específica.

Exemple:

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

Explicació:

  • Aquest codi imprimeix els números imparells del 1 al 9.
  • Quan i és parell, la sentència continue s'executa i salta a la següent iteració del bucle.

  1. Sentència pass

La sentència pass és una operació nul·la; no fa res quan s'executa. S'utilitza com a marcador de posició en el codi, per exemple, en llocs on es necessita una sentència però no es vol executar cap codi.

Exemple:

for i in range(10):
    if i % 2 == 0:
        pass
    else:
        print(i)

Explicació:

  • Aquest codi imprimeix els números imparells del 1 al 9.
  • Quan i és parell, la sentència pass s'executa, però no fa res.

  1. Instrucció else amb Bucles

En Python, els bucles for i while poden tenir una clàusula else. El bloc else s'executa quan el bucle finalitza de manera natural (és a dir, no per una sentència break).

Exemple:

for i in range(10):
    if i == 5:
        break
    print(i)
else:
    print("El bucle ha finalitzat sense interrupcions.")

Explicació:

  • Aquest codi imprimeix els números del 0 al 4.
  • Quan i és igual a 5, la sentència break s'executa i el bucle es trenca, per tant, el bloc else no s'executa.

Exemple sense break:

for i in range(5):
    print(i)
else:
    print("El bucle ha finalitzat sense interrupcions.")

Explicació:

  • Aquest codi imprimeix els números del 0 al 4.
  • Com que el bucle finalitza de manera natural, el bloc else s'executa i imprimeix el missatge.

Exercicis Pràctics

Exercici 1:

Escriu un programa que imprimeixi els números del 1 al 10, però que es trenqui quan arribi al número 7.

Solució:

for i in range(1, 11):
    if i == 7:
        break
    print(i)

Exercici 2:

Escriu un programa que imprimeixi només els números parells del 1 al 10.

Solució:

for i in range(1, 11):
    if i % 2 != 0:
        continue
    print(i)

Exercici 3:

Escriu un programa que utilitzi la sentència pass dins d'un bucle for que recorri els números del 1 al 5, però que no faci res amb aquests números.

Solució:

for i in range(1, 6):
    pass

Exercici 4:

Escriu un programa que recorri els números del 1 al 5 i imprimeixi un missatge al final del bucle utilitzant la instrucció else.

Solució:

for i in range(1, 6):
    print(i)
else:
    print("El bucle ha finalitzat sense interrupcions.")

Resum

En aquesta secció, hem après sobre diverses eines de flux de control en Python, incloent les sentències break, continue, pass, i l'ús de la instrucció else amb bucles. Aquestes eines ens permeten gestionar el comportament dels nostres bucles de manera més precisa i eficient. Practica aquests conceptes amb els exercicis proporcionats per consolidar el teu coneixement.

Curs de Programació en Python

Mòdul 1: Introducció a Python

Mòdul 2: Estructures de Control

Mòdul 3: Funcions i Mòduls

Mòdul 4: Estructures de Dades

Mòdul 5: Programació Orientada a Objectes

Mòdul 6: Gestió de Fitxers

Mòdul 7: Gestió d'Errors i Excepcions

Mòdul 8: Temes Avançats

Mòdul 9: Proves i Depuració

Mòdul 10: Desenvolupament Web amb Python

Mòdul 11: Ciència de Dades amb Python

Mòdul 12: Projecte Final

© Copyright 2024. Tots els drets reservats