Menu
CoddyTech

Recapitulação - Erros no Carrinho de Compras

Parte da seção Lógica e Fluxo do Journey de Python da Coddy. Lição 66 de 78.

challenge icon

Desafio

Médio

Crie um programa que simule um carrinho de compras com tratamento de erros. Sua tarefa é:

  1. Criar uma função chamada handle_shopping_cart que processe os pedidos dos clientes
  2. A função deve aceitar uma lista de strings de pedidos no formato "item:quantity"
  3. Processar cada pedido:
    • Dividir a string de entrada para obter o item e a quantidade
    • Converter a quantidade em um inteiro
    • Adicionar o item a um dicionário de carrinho de compras, usando a quantidade como valor
    • Se um item já existir no carrinho, adicionar a nova quantidade à quantidade existente
  4. Tratar estes erros específicos:
    • Se o formato da entrada estiver incorreto (faltando dois-pontos), imprimir "Invalid format: {order}"
    • Se a quantidade não for um número válido, imprimir "Invalid quantity: {order}"
    • Se a quantidade for negativa, imprimir "Negative quantity not allowed: {order}"
  5. Retornar o dicionário do carrinho de compras concluído

Verifique o formato e a quantidade negativa com um if. Somente transformar a quantidade em um inteiro pode gerar um erro, portanto except ValueError é onde "Invalid quantity: {order}" é impresso. Mantenha o último bloco except Exception as e como uma rede de segurança e imprima "Unexpected error: {e}" nele.

Experimente você mesmo

def handle_shopping_cart(orders):
    # Crie um dicionário vazio para o carrinho de compras
    cart = {}

    # Processe cada pedido na lista
    for order in orders:
        try:
            # Divida o pedido, verifique o formato e a quantidade, depois adicione-o ao carrinho
            pass

        except ValueError:
            # A quantidade não era um número
            pass

        except Exception as e:
            # Qualquer coisa inesperada
            pass

    # Retorne o carrinho completo
    return cart

Todas as lições de Lógica e Fluxo

Pratique por conta própria: Compilador de Python online