Annotazioni Python

Annotazioni Python
Studieremo sulle annotazioni di Python in questo tutorial. In Python 3.0, le annotazioni sono state introdotte per la prima volta senza alcun obiettivo chiaro in mente. Non servivano come nient'altro che un mezzo per associare le espressioni arbitrarie con argomenti della funzione e valori di restituzione. Anni dopo, PEP 484 ha delineato il processo per includere i suggerimenti di tipo nel codice Python. Le annotazioni sono il metodo principale per includere i suggerimenti del tipo. Dato che il controllo del tipo è più comunemente usato al giorno d'oggi, le annotazioni dovrebbero essere utilizzate principalmente per i suggerimenti di tipo.

Annotazioni in Python

I tipi di dati di variabili, parametri della funzione e tipi di restituzione della funzione sono descritti tramite annotazioni che sono le frasi arbitrarie di Python.

Al fine di fornire le funzionalità efficienti e di risparmio di tempo come suggerimenti di sintassi, accenno al tipo di dati in IDE, controllo del tipo di dati, creazione di documentazione robotica o guidata dall'IA e completamento automatico del codice, le annotazioni si sforzano di rendere il codice sorgente più accessibile e comprensibile.

La funzione e le annotazioni variabili sono i due tipi di annotazioni disponibili in Python. Con l'uso di esempi pertinenti, discuteremo di entrambe le forme di annotazioni di Python in questo post.

Quali sono le annotazioni variabili?

Python usa espressioni chiamate annotazioni variabili per descrivere i tipi di dati di variabili in modo più approfondito. La sintassi per annotazioni variabili è riportata nel seguente:

Esempio 1:
Le espressioni per le annotazioni sono prefissate con un colon "o:" e posizionati tra il nome della variabile e il valore iniziale. Per comprendere ulteriormente il concetto, consultare il seguente codice Python. Abbiamo usato i tipi di dati Python integrati per le espressioni nel seguente esempio. L'immagine allegata dimostra il codice di esempio complessivo:

Ecco il risultato prodotto dal codice precedente mostrato:

Le stringhe possono anche essere usate per descrivere le variabili in atto. Questo viene visualizzato nel codice come puoi vedere nel seguente:

Allegato è l'output:

Per accedere a ogni annotazione, utilizzare l'attributo "__annotations___". Questa proprietà è un dizionario con variabili come chiavi e espressioni di annotazione come valori. Le funzioni non sono coperte da questo attributo. Fornisce solo informazioni sulle variabili. Per questo, vedi il seguente codice Python:

Il risultato dell'utilizzo di "_annotations_" nel codice Python è visto di seguito:

Finora abbiamo parlato solo dei semplici tipi di dati, tra cui INT, Float e STR. Diamo ora un'occhiata a come creare le espressioni di annotazione per tipi di dati più complicati come elenchi, tuple, set, elenchi di oggetti, ecc. Faremo uso del modulo tipo per questo.

La libreria standard di Python include il modulo Tipo. Con l'aiuto di un esempio, impariamo come applicarlo ai tipi di dati complessi. Per questo, vedi il seguente codice Python:

Quello che segue è il risultato:

Le forme generiche di elenco, tupla e set sono rappresentate dall'elenco delle classi, tupla e set nel modulo Tipo. Altre classi generiche esistono oltre a questi tre tra cui DICT, Frozenset, DefaultDict e OrdineDDict.

Puoi utilizzare queste classi generiche per dare alle variabili le espressioni di annotazione. Seguendo le classi ci sono i suggerimenti [] tra le altre classi generiche, le descrizioni delle stringhe, i tipi di dati primitivi o le classi dallo stesso modulo.

La prossima sezione di questo articolo discuterà come usarli per formulare le espressioni della funzione.

Quali sono le annotazioni di funzione?

In PEP-3107, le annotazioni della funzione sono delineate. L'obiettivo principale è stabilire un metodo uniforme per collegare le informazioni agli argomenti della funzione e ai valori di restituzione. Molti membri della comunità hanno scoperto i casi d'uso innovativi, sebbene abbiano impiegato le varie tecniche tra cui l'aggiunta delle caratteristiche uniche all'oggetto funzione e la creazione di decoratori personalizzati e formati di dottore.

È fondamentale rendersi conto che Python non conferisce alcuna semantica alle annotazioni. Offre solo un ottimo supporto sintattico per taggare i metadati e un modo semplice per accedervi. Le annotazioni sono anche del tutto opzionali.

Esempio 2:
Diamo un'occhiata a un esempio. Ecco una funzione chiamata func () che stampa la somma dei tre input: uno, due e tre. In particolare, func () non restituisce nulla. Uno, il primo argomento, è lasciato senza annotazioni. Il tipo intero è annotato per il terzo parametro, "tre" mentre la stringa "annota due" è annotata per il secondo input, "due."Il tipo di galleggiante è indicato accanto al valore di ritorno. Prendi nota della sintassi "->" (indicata di seguito) quando annota il valore di restituzione. L'immagine allegata dimostra il codice di esempio complessivo:

L'esecuzione della funzione non è in alcun modo influenzata dalle annotazioni. Usiamo rispettivamente gli argomenti INT e String quando si utilizzano il func (). In entrambi i tempi, Func () intraprende l'azione appropriata e ignora le annotazioni.

L'immagine allegata dimostra il codice di esempio complessivo:

Ecco il risultato dell'applicazione di entrambe le funzioni:

Esempio 3:
Per la tua assistenza, ecco un altro programma di esempio. La funzione create_user () accetta i tre valori - nome, età e hobby - e produce un dizionario o un detto, come si può vedere nella seguente immagine. La funzione create utenti () prende un elenco di tuple che definiscono un elenco di utenti. Questo approccio produce un elenco di dizionari.

La variabile di tipo dict U1 memorizza i risultati della chiamata del metodo al metodo create utente ().

Inoltre, l'elenco [DICT] Digita gli utenti variabili detengono i risultati della chiamata di funzione verso il metodo Create Users (). L'immagine allegata dimostra il codice di esempio complessivo:

Tutti i nomi, le età e gli hobby degli utenti vengono visualizzati qui:

Solo le informazioni sulle variabili sono fornite dall'attributo "__annotations__". Possiamo utilizzare l'attributo "__annotations__" per recuperare le informazioni di annotazione sulle funzioni. Puoi capire questo concetto con il seguente codice dato. L'immagine allegata dimostra il codice di esempio complessivo:

Tutte le informazioni di annotazione sono incluse nel dizionario di output. Tieni presente che la chiave del dizionario per il tipo di ritorno è "Return". Le chiavi dei parametri sono i nomi dei parametri.

Conclusione

Python è un potente linguaggio di programmazione con digitazione dinamica. È supportato da una vasta gamma di librerie e funzionalità e ha una semplice sintassi simile alla scrittura di un inglese semplice. Le annotazioni sono una di queste opzioni. Lo scopo delle annotazioni è rendere il codice sorgente più leggibile e più facile da capire. La funzione e le annotazioni variabili sono i principali due tipi di annotazioni utilizzate in Python. Abbiamo coperto entrambe le forme di annotazioni di Python in questo articolo con l'aiuto degli esempi pertinenti.