Le 6 principali funzionalità utili di Python 3.10

Le 6 principali funzionalità utili di Python 3.10

Python 3.10 si vanta di essere una delle versioni più stabili disponibili per il download da parte degli utenti e verrà rilasciato entro la fine dell'anno. La versione appena rilasciata includerà molte modifiche evidenti, come funzionalità di facile utilizzo sia per i programmatori principianti che per quelli esperti.





I miglioramenti evidenti nella nuova versione di Python includono l'introduzione del pattern matching strutturale, migliori messaggi di errore, nuovi operatori di unione, numeri di riga precisi per il debug e molto altro.





Ecco cosa devi sapere su Python 3.10:





Corrispondenza dei modelli strutturali in Python 3.10

Lo Structural Pattern Matching rende la scrittura del codice un gioco da ragazzi e continua a essere uno dei punti salienti dell'ultima versione di Python. Python mira a migliorare le dichiarazioni match-case preesistenti presenti nelle versioni precedenti del linguaggio di programmazione. È stato effettuato un aggiornamento alle istruzioni match-case esistenti all'interno di Python.

Diamo una rapida occhiata alle implementazioni di Structural Pattern Matching:



L'istruzione match-case fa parte del linguaggio Python da un po' di tempo. Questa affermazione è fondamentalmente utilizzata per evitare il noioso lavoro di scrivere il se altro dichiarazione più volte.

Puoi abbinare oggetti con proprietà simili usando questa funzione nella nuova build.





match media_object:case Image(type='jpg'):# Return as-isreturn media_objectcase Image(type='png') | Image(type='gif'):return render_as(media_object, 'jpg')case Video():raise ValueError('Can't extract frames from video yet')case other_type:raise Exception(f'Media type {media_object} can't be handled yet')

La nuova libreria Python riconosce oggetti come jpg, gif e video. Questo codice può essere eseguito senza problemi senza generare errori.

2. Messaggi di errore migliorati

Ogni programmatore probabilmente comprende l'importanza degli errori durante la scrittura del codice e quanto possono essere esasperanti alcuni tipi di errore. Le versioni precedenti di Python lanciavano messaggi di errore non appena si verificavano problemi nella sintassi. Questi potrebbero essere dovuti a sintassi sbagliata, parole chiave mancanti, parole chiave errate o errate, tra gli altri problemi.





Questi messaggi di errore erano tutt'altro che perfetti in quanto diventava difficile per i principianti (a volte anche per gli utenti avanzati) identificare la vera causa dell'errore nei loro codici. Come programmatore, Google continua ad essere tuo alleato nel decifrare il motivo alla base dei diversi messaggi di errore.

come faccio a sapere a chi appartiene un numero di telefono gratuitamente?

Ad esempio, molte persone potrebbero non sapere perché Python genera il seguente errore:

SyntaxError: unexpected EOF while parsing error message.

La mancanza di chiarezza in tali affermazioni ha spinto la versione più recente di Python a migliorare il suo insieme esistente di messaggi di errore.

I messaggi più vecchi sono stati sostituiti con messaggi di errore di facile comprensione come:

{ non è mai stato chiuso EOF imprevisto durante l'analisi

Alcune altre modifiche includono:

Errori di attributo come:

from collections import namedtoplo

il modulo 'collezioni' non ha attributo 'namedtoplo'. Forse intendi: namedtuple?

I messaggi NameError vengono modificati per assomigliare a:

new_var = 5print(new_vr)>

NameError: il nome 'new_vr' non è definito. Forse intendi: new_var?

3. Gestori di contesto tra parentesi

I nuovi gestori di contesto tra parentesi possono rendere il tuo codice più elegante. Anche se non è una caratteristica importante, può facilmente rendere il tuo codice meno goffo. Questa funzione è utile se lavori in un team e il tuo codice deve essere strutturato.

Immagina di scrivere una dichiarazione come:

with open('file1.txt', 'r') as fin, open('file2.txt', 'w') as fout:fout.write(fin.read())

Il codice sopra funziona, ma la prima riga è troppo lunga e sembra goffa. Puoi interrompere la riga usando una barra rovesciata ( ) e fai sembrare il codice strutturato:

with open('file1.txt', 'r') as fin, open('file2.txt', 'w') as fout: fout.write(fin.read())

Con l'introduzione del nuovo gestore di contesti tra parentesi, puoi anche interrompere la linea usando anche le parentesi:

with (open('file1.txt', 'r') as fin,open('file2.txt', 'w') as fout):fout.write(fin.read())

Imparentato: Idee di progetto Python adatte ai principianti

4. Nuovo tipo di operatore sindacale

Una caratteristica piccola ma utile in Python 3.10 è il nuovo tipo di operatore di unione. Ogni versione di Python viene fornita con un set predefinito di funzionalità di suggerimento del tipo.

come aumentare la RAM video dedicata

L'operatore di unione include la logica condizionale; Per esempio, int o galleggiante può essere scritto come Unione [X, Y] . Il nuovo operatore sindacale può essere espresso come int|flottante anche.

L'introduzione di un nuovo operando di unione in Python 3.10 fa risparmiare tempo e rende il codice ben definito.

Per esempio:

def f(x: int | float) -> float: return x * 3.142f(1) # passf(1.5) # passf('str') # linter will show annotation error

5. Numeri di riga precisi per il debug

Potresti aver notato molte volte prima che la traccia degli errori non ti reindirizza alla riga corretta in cui si è verificato un errore. Ciò rende difficile il debug per i programmatori che hanno appena iniziato a scrivere codice.

La traccia degli errori imperfetta è particolarmente evidente durante la scrittura sys.settrace e strumenti correlati in Python. La versione più recente migliora questo in modo significativo e puoi vedere numeri di riga precisi quando si verifica un errore.

Per portare un numero di riga più preciso, Python 3.10 sposta la sua affidabilità dall'attuale co_Inotab attributo e usa il nuovo metodo co_lines () attributo. Questo attributo funziona in modo tale che f_lineo contiene sempre il numero di riga esatto.

1. for (2. x) in [1]:3. pass4. return

Correlati: eseguire il debug del codice Python

6. Valutazione posticipata delle annotazioni

All'interno di Python, la valutazione dell'annotazione del tipo viene eseguita al momento della definizione della funzione. Ciò significa che le annotazioni di tipo vengono valutate riga per riga in modo dall'alto verso il basso.

Anche se potrebbe sembrare l'opzione migliore, ci sono ancora due problemi in questo approccio:

  • I suggerimenti di tipo si riferiscono a tipi che non sono ancora definiti e non funzionano; questi suggerimenti devono essere espressi come stringhe.
  • Le importazioni del modulo sono rallentate poiché i suggerimenti di tipo vengono eseguiti in tempo reale.

Per evitare problemi di esecuzione, le annotazioni vengono archiviate in _annotazioni_ e la valutazione viene eseguita insieme. Ciò consente il riferimento in avanti poiché le importazioni dei moduli vengono eseguite per prime, riducendo così il tempo di inizializzazione.

Lavorare con le funzionalità più recenti in Python 3.10

La versione più recente di Python uscirà il 4 ottobre 2021; promette di correggere i bug presenti nelle versioni esistenti. Le versioni che seguono miglioreranno l'attuale versione 3.10.

La mappatura dei modelli strutturali è il punto culminante di questo nuovo aggiornamento e semplifica la scrittura di codici per oggetti simili. Altre funzionalità come Parenthesized Context Managers e il nuovo tipo Union Operators mirano a rendere il codice più semplice ed efficiente.

Tuttavia, ci sono alcune eccellenti tecniche di gestione delle eccezioni all'interno delle versioni esistenti di Python. Puoi fare buon uso delle funzionalità di Python.

Condividere Condividere Tweet E-mail Come gestire le eccezioni in Python

Copri le tue basi di codifica con le eccezioni Python.

Leggi Avanti
Argomenti correlati
  • Programmazione
  • Programmazione
  • Pitone
  • Suggerimenti per la codifica
Circa l'autore Wini Bhalla(41 articoli pubblicati)

Wini è uno scrittore con sede a Delhi, con 2 anni di esperienza di scrittura. Durante i suoi periodi di scrittura, è stata associata ad agenzie di marketing digitale e studi tecnici. Ha scritto contenuti relativi a linguaggi di programmazione, tecnologia cloud, AWS, Machine Learning e molto altro. Nel tempo libero le piace dipingere, trascorrere del tempo con la sua famiglia e viaggiare in montagna, quando possibile.

Altro da Wini Bhalla

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per consigli tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti