IniziaInizia gratis

Gestione degli errori con try-except

Una buona pratica per scrivere le tue funzioni è anche quella di prevedere i modi in cui altre persone (o tu stesso, se per sbaglio usi la tua funzione) potrebbero utilizzare la funzione che hai definito.

Come nell'esercizio precedente, hai visto che la funzione len() è in grado di gestire argomenti di input come stringhe, liste e tuple, ma non quelli di tipo int e solleva un messaggio di errore appropriato quando incontra argomenti di input non validi. Un modo per farlo è la gestione delle eccezioni con il blocco try-except.

In questo esercizio definirai una funzione e utilizzerai un blocco try-except per gestire i casi in cui gli argomenti di input non sono corretti.

Ricorda la funzione shout_echo() che hai definito negli esercizi precedenti; parti della definizione della funzione sono riportate nel codice di esempio. Il tuo obiettivo è completare il codice di gestione delle eccezioni nella definizione della funzione e fornire un messaggio di errore appropriato quando si verifica un errore.

Questo esercizio fa parte del corso

Introduzione alle funzioni in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Inizializza le variabili echo_word e shout_words come stringhe vuote.
  • Aggiungi le parole chiave try e except nelle posizioni appropriate per il blocco di gestione delle eccezioni.
  • Usa l'operatore * per concatenare echo copie di word1. Assegna il risultato a echo_word.
  • Concatena la stringa '!!!' a echo_word. Assegna il risultato a shout_words.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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")
Modifica ed esegui il codice