Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda If/Else em um Loop Aninhado | Loops Aninhados
Tutorial de Loops em Python
course content

Conteúdo do Curso

Tutorial de Loops em Python

Tutorial de Loops em Python

1. O Loop for
2. O Loop While
3. Loops Aninhados
4. List and Dictionary Comprehensions

book
If/Else em um Loop Aninhado

As declarações if/else são essenciais para adicionar condições a loops aninhados. Elas permitem que você filtre, processe ou categorize dados, como identificar valores específicos em listas ou matrizes.

Vamos adaptar esse conceito para uma tarefa prática: filtrar despesas de viagem. Se uma despesa exceder um certo limite de orçamento, vamos marcá-la como "Caro"; caso contrário, vamos imprimir a despesa original.

Suponha que você tenha uma lista de viagens, e cada viagem contenha despesas para categorias como voos, hotéis, alimentação e atividades. Seu objetivo é verificar cada despesa:

  • Se a despesa exceder $200, marque-a como Expensive;
  • Caso contrário, imprima a despesa original.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print("Expensive", end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • O loop while externo itera por cada viagem na lista travel_costs usando o índice i;
  • O loop while interno percorre as despesas da viagem atual usando o índice j;
  • A condição if/else verifica se uma despesa é maior que $200;
  • Após processar todas as despesas de uma viagem, o programa passa para a próxima linha e prossegue para a próxima viagem.
Tarefa

Swipe to start coding

Você recebe uma lista de despesas de viagem para várias viagens. Cada viagem é representada como uma lista aninhada contendo várias despesas, como transporte, acomodação, alimentação e atividades. Sua tarefa é processar essas despesas identificando "custos baratos" enquanto mantém a mesma estrutura aninhada.

  • Você recebe uma lista bidimensional (lista de listas), onde cada lista interna representa as despesas de uma única viagem.
  • Itere através da lista de despesas de cada viagem.
  • Substitua qualquer despesa de $100 ou menos por "Cheap", mantendo os outros valores inalterados.
  • Armazene as despesas transformadas em uma nova lista bidimensional com a mesma estrutura

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 3
toggle bottom row

book
If/Else em um Loop Aninhado

As declarações if/else são essenciais para adicionar condições a loops aninhados. Elas permitem que você filtre, processe ou categorize dados, como identificar valores específicos em listas ou matrizes.

Vamos adaptar esse conceito para uma tarefa prática: filtrar despesas de viagem. Se uma despesa exceder um certo limite de orçamento, vamos marcá-la como "Caro"; caso contrário, vamos imprimir a despesa original.

Suponha que você tenha uma lista de viagens, e cada viagem contenha despesas para categorias como voos, hotéis, alimentação e atividades. Seu objetivo é verificar cada despesa:

  • Se a despesa exceder $200, marque-a como Expensive;
  • Caso contrário, imprima a despesa original.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print("Expensive", end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • O loop while externo itera por cada viagem na lista travel_costs usando o índice i;
  • O loop while interno percorre as despesas da viagem atual usando o índice j;
  • A condição if/else verifica se uma despesa é maior que $200;
  • Após processar todas as despesas de uma viagem, o programa passa para a próxima linha e prossegue para a próxima viagem.
Tarefa

Swipe to start coding

Você recebe uma lista de despesas de viagem para várias viagens. Cada viagem é representada como uma lista aninhada contendo várias despesas, como transporte, acomodação, alimentação e atividades. Sua tarefa é processar essas despesas identificando "custos baratos" enquanto mantém a mesma estrutura aninhada.

  • Você recebe uma lista bidimensional (lista de listas), onde cada lista interna representa as despesas de uma única viagem.
  • Itere através da lista de despesas de cada viagem.
  • Substitua qualquer despesa de $100 ou menos por "Cheap", mantendo os outros valores inalterados.
  • Armazene as despesas transformadas em uma nova lista bidimensional com a mesma estrutura

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 3
Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
We're sorry to hear that something went wrong. What happened?
some-alt