ComeçarComece gratuitamente

Tratamento de erros com try-except

Uma boa prática ao escrever suas próprias funções é também antecipar as maneiras pelas quais outras pessoas (ou você mesmo, se acidentalmente usar mal sua própria função) poderão usar a função que você definiu.

Como no exercício anterior, você viu que a função len() é capaz de lidar com argumentos de entrada como strings, listas e tuplas, mas não do tipo int, e gera um erro e uma mensagem de erro apropriados quando encontra argumentos de entrada inválidos. Uma maneira de fazer isso é por meio do tratamento de exceções com o bloco try-except.

Neste exercício, você definirá uma função e usará um bloco try-except para lidar com casos em que argumentos de entrada incorretos são passados para a função.

Lembre-se da função shout_echo() que você definiu nos exercícios anteriores; partes da definição da função são fornecidas no código de exemplo. Seu objetivo é concluir o código de tratamento de exceções na definição da função e fornecer uma mensagem de erro apropriada ao gerar um erro.

Este exercício faz parte do curso

Introdução a funções em Python

Ver Curso

Instruções de exercício

  • Inicialize as variáveis echo_word e shout_words com strings vazias.
  • Adicione as palavras-chave try e except nos locais apropriados para o bloco de tratamento de exceções.
  • Use o operador * para concatenar cópias echo de word1. Atribua o resultado a echo_word.
  • Concatene a string '!!!' com echo_word. Atribua o resultado a shout_words.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Define shout_echo
def shout_echo(word1, echo=1):
    """Concatenate echo copies of word1 and three
    exclamation marks at the end of the string."""

    # Initialize empty strings: echo_word, shout_words
    
    

    # Add exception handling with try-except
    ____:
        # Concatenate echo copies of word1 using *: echo_word
        echo_word = ____

        # Concatenate '!!!' to echo_word: shout_words
        shout_words = ____
    ____:
        # Print error message
        print("word1 must be a string and echo must be an integer.")

    # Return shout_words
    return shout_words

# Call shout_echo
shout_echo("particle", echo="accelerator")
Editar e executar código