Coding for KidsCoding for Kids
Níveis CriativosDesafiosGuia do Professor
Votar em funcionalidades
Curso Avançado de Desenvolvimento Python
Capítulo
>
Nível

Manipulação de Exceções
Tratamento de Exceções

Objetivo

Empacote os suprimentos em caixas e capture quaisquer erros que possam ocorrer usando Exceções.

Existem vários suprimentos de emergência que precisam ser embalados em kits e armazenados em caixotes para uso posterior. Fazer isso é bem simples e pode ser realizado utilizando funções comuns que você já aprendeu, porém às vezes as coisas não saem como planejado. Ao programar, você pode ter notado que, às vezes, erros aparecem na tela, e marcas vermelhas surgem no editor onde o problema ocorreu. Você pode mitigar isso configurando os blocos de código try e except.

Esses blocos de código são usados para configurar exceções e capturar erros antes que eles interrompam seu código. O funcionamento é o seguinte: você usa try em um código que seja problemático ou propenso a erros e usa except para substituir o código por outro caso ocorra um erro, por exemplo:

#The try code block attempts to run a code try: number + number + string #This code yeilds an error, you can't sum numbers with string except: #If an error occurs the except code block is run instead number + number + number #The code is switched out by a sum of three numbers instead

Para começar, recolha todos os materiais no campo, que são: latas de água, "thread" e três cobertores coloridos: "blue blanket", "red blanket", "green blanket". Comece indo até o topo do mapa e recolha os três cobertores, vá até a marca X clara e use a função collect() para obter "thread" do contêiner. Em seguida, mova-se para a parte inferior do mapa e recolha todas as latas de água.

Depois que tudo estiver recolhido, dirija-se até a marca X escura sobre o tapete azul para começar a posicionar os materiais que você acabou de recolher. Primeiro, armazene a água e o thread em variáveis com 2 e 3 unidades, respectivamente, assim: water_can = 2 e thread = 3. Em seguida, configure os kits como variáveis, somando as variáveis previamente criadas com os cobertores coloridos, no seguinte formato:

blue_kit = water_can + thread + "blue blanket" red_kit = water_can + thread + "red blanket" green_kit = water_can + thread + "green blanket" # Add all elements together into kits for ease of storage

Depois que os kits foram montados nas variáveis blue_kit, red_kit e green_kit, é hora de colocá-los nas caixas da cor correspondente, porém você pode ter notado que o código está lançando um erro. Mas por quê? Tudo está como deveria e as instruções foram seguidas. Às vezes, por mais intuitivo que seja, as coisas não funcionam da maneira que desejamos; neste caso, você não pode somar um número com uma string em uma variável.

Então, como vamos resolver isso? Usando os blocos de código try / except para capturar o erro e convertê-lo para uma substituição adequada. Para cada uma das três (3) variáveis, aplique essas exceções, que no caso de um erro substituem o código por um valor numérico em vez de uma string específica.

try: blue_kit = water_can + thread + "blue blanket" except: blue_kit = water_can + thread + 1

Embora, neste caso, estejamos cientes do erro, há algumas situações em que os valores dentro das variáveis podem não ser tão diretos ou podem ser diferentes dependendo de certas condições, tornando esta uma ferramenta útil para solucionar problemas ou capturar erros de execução.

Complete o nível caminhando até as marcas X escuras sobre os tapetes coloridos, de frente para as caixas, e usando a função place() para posicionar as variáveis dos kits da cor correspondente nas caixas corretas.

Livro de Código