Le annotazioni di tipo, o type annotations, in Python sono una caratteristica del linguaggio che permette di specificare il tipo di dato (come int, str, list, etc.) che una funzione si aspetta di ricevere come argomenti o che prevede di restituire come risultato.
Le annotazioni di tipo non influenzano il comportamento del programma, ma sono utilizzate principalmente per due scopi:
1. Documentazione: le annotazioni di tipo possono essere utilizzate per rendere il codice più facile da capire e mantenere. Per esempio, se una funzione si aspetta di ricevere una lista di stringhe come argomento, può utilizzare l’annotazione di tipo per renderlo chiaro.
1. Verifica del tipo di dato utilizzando strumenti esterni come i linters. Nonostante Python sia un linguaggio a tipizzazione dinamica, può essere utile in alcuni contesti verificare staticamente che i tipi di dati siano corretti per ridurre la presenza di bug.
Un esempio di funzione con annotazioni di tipo potrebbe essere il seguente:
```
def saluta(nome: str) -> str:
return “Ciao “ + nome
```
In questo caso, l’annotazione `: str` dopo l’argomento `nome` indica che la funzione si aspetta di ricevere una stringa. L’annotazione `-> str` prima del `:` indica che la funzione restituirà una stringa.