Agora que já dominamos os tipos de dados e as instruções de decisão, vamos explorar os ciclos, ou laços (loops), em Python. Os ciclos permitem-nos repetir um bloco de código várias vezes, o que é extremamente útil em muitas situações.
Ciclo while
O ciclo while
executa repetidamente um bloco de código enquanto uma condição especificada for verdadeira.
# Exemplo de ciclo while
contador = 0
while contador < 5:
print("Contador é:", contador)
contador += 1
No exemplo acima, o ciclo while
continua a executar enquanto a variável contador
for menor que 5. A cada iteração, contador
é incrementado em 1. Resultado do código:
Contador é: 0
Contador é: 1
Contador é: 2
Contador é: 3
Contador é: 4
Imagine que estamos a criar um programa simples que pergunta a idade do utilizador até que ele insira um valor válido.
idade = int(input("Insira a sua idade: "))
while idade <= 0 or idade > 120:
print("Idade inválida. Por favor, insira novamente.")
idade = int(input("Insira a sua idade: "))
print("A sua idade é:", idade)
Ciclo for
O ciclo for
é ideal para iterar sobre uma sequência (como uma lista, uma tupla ou um intervalo de números).
# Exemplo de ciclo for
nomes = ["Ana", "Bruno", "Clara"]
for nome in nomes:
print("Nome:", nome)
Neste exemplo, o ciclo for
percorre cada elemento da lista nomes
e imprime-o. Resultado do código:
Nome: Ana
Nome: Bruno
Nome: Clara
Suponha que queremos calcular a soma dos números de 1 a 10. Podemos fazer isso facilmente com um ciclo for
:
soma = 0
for i in range(1, 11):
soma += i
print("A soma dos números de 1 a 10 é:", soma)
A função range(1, 11)
gera uma sequência de números de 1 a 10 (o 11 não está incluído).
Comandos break
e continue
Os comandos break
e continue
ajudam-nos a controlar o fluxo dos ciclos de forma mais precisa.
-
break
termina o ciclo prematuramente. -
continue
salta a iteração atual e volta ao início do ciclo.
Exemplo Prático com break
Podemos usar break
para sair de um ciclo quando uma condição especial for encontrada:
for numero in range(1, 11):
if numero == 5:
break
print(numero)
Resultado do código:
1
2
3
4
Neste caso, quando numero
é igual a 5, o ciclo termina.
Podemos usar continue
para ignorar uma iteração específica:
for numero in range(1, 6):
if numero == 3:
continue
print(numero)
Resultado do código:
1
2
4
5
O número 3 é ignorado e o ciclo continua com os restantes números.
Resumo
Neste capítulo, aprendemos sobre os ciclos while
e for
em Python. Vimos como repetir blocos de código usando ciclos e como controlar o fluxo dos ciclos com os comandos break
e continue
. Explorámos aplicações práticas dessas estruturas, facilitando a compreensão dos conceitos.
Quiz
-
O que faz o ciclo
while
em Python?- a) Repetir um bloco de código um número específico de vezes.
- b) Repetir um bloco de código enquanto uma condição for verdadeira.
- c) Iterar sobre uma sequência.
- d) Nenhuma das opções anteriores.
-
O que acontece quando a condição de um ciclo
while
é sempre verdadeira?- a) O ciclo nunca é executado.
- b) O ciclo é executado uma vez.
- c) O ciclo entra num laço infinito.
- d) A condição é ignorada.
-
Qual é a função do comando
break
num ciclo?- a) Reiniciar a iteração do ciclo.
- b) Saltar a iteração atual e continuar para a próxima.
- c) Terminar o ciclo prematuramente.
- d) Transformar o ciclo num
for
loop.
-
O que faz o comando
continue
num ciclofor
?- a) Termina o ciclo.
- b) Salta a iteração atual e volta ao início do ciclo.
- c) Imprime todos os elementos da sequência.
- d) Inverte a sequência.
-
Como se chama a estrutura que itera sobre uma sequência em Python?
- a) Ciclo
while
- b) Estrutura
repeat
- c) Ciclo
for
- d) Comando
next
- a) Ciclo