Python 3.10¶
Python 3.10.0 (finale) e” stato rilasciato il 4 ottobre 2021. Le funzionalita” della 3.10 sono definite in PEP 619 e una descrizione dettagliata delle modifiche e” disponibile in What’s New in Python 3.10.
Nuove funzionalita” di sintassi |
Stato |
|
Structural Pattern Matching: Specification |
||
Structural Pattern Matching: Motivation and Rationale |
||
Structural Pattern Matching: Tutorial |
||
I context manager tra parentesi sono ora ufficialmente consentiti |
||
Nuove funzionalita” nella libreria standard |
||
Aggiunta del controllo opzionale della lunghezza a zip |
||
Miglioramenti dell’interprete |
||
Numeri di riga precisi per il debugging e altri strumenti |
||
Nuove funzionalita” di tipizzazione |
||
Possibilita” di scrivere i tipi union come X | Y |
||
Alias di tipo espliciti |
||
Variabili di specifica dei parametri |
||
Deprecazioni, rimozioni o restrizioni importanti |
||
Richiesta di OpenSSL 1.1.1 o successivo |
||
Deprecazione del modulo distutils. |
Non rilevante |
|
Deprecazione e preparazione alla rimozione del membro wstr in PyUnicodeObject. |
Non rilevante |
|
Rimozione delle API di codifica Py_UNICODE |
Non rilevante |
|
Aggiunta dell’EncodingWarning opzionale |
||
Altre modifiche al linguaggio:
Il tipo |
|
Le viste restituite da |
|
PEP 618: La funzione |
|
Le funzioni builtin e di estensione che accettano argomenti interi non accettano piu” |
|
Se |
|
Le espressioni di assegnamento possono ora essere usate senza parentesi all’interno dei literal di set e delle comprehension di set, nonche” negli indici di sequenza (ma non negli slice). |
|
Le funzioni hanno un nuovo attributo |
|
Sono state aggiunte due nuove funzioni builtin – |
|
I metodi statici ( |
|
Le annotazioni per target complessi (tutto cio” che esula dai target |
|
Gli oggetti classe e modulo ora creano in modo lazy dizionari di annotazioni vuoti su richiesta. I dizionari di annotazioni sono memorizzati nel |
|
Le annotazioni costituite da |
|
L’uso di variabili non vincolate, di |
|
Gli hash dei valori NaN sia del tipo |
|
Verra” sollevata un’eccezione |
|
Le eccezioni |
Modifiche ai moduli builtin:
Aggiunta del metodo mancante |
|
Il metodo |
|
Aggiunta di audit hook per |
|
Il modulo hashlib richiede OpenSSL 1.1.1 o successivo. |
|
Il modulo hashlib ha un supporto preliminare per OpenSSL 3.0.0. |
|
Il fallback in puro Python di |
|
Aggiunta del supporto a |
|
Aggiunta di una nuova funzione |
|
Aggiunta di |
|
Aggiunta di |
|
Aggiunta di |
|
L’eccezione |
|
Aggiunta dell’opzione per creare socket MPTCP con |
|
Aggiunta dell’opzione |
|
Il modulo ssl richiede OpenSSL 1.1.1 o successivo. |
|
Il modulo ssl ha un supporto preliminare per OpenSSL 3.0.0 e una nuova opzione |
|
Le funzioni deprecate e l’uso di costanti deprecate ora generano un |
|
Il modulo ssl ha ora impostazioni predefinite piu” sicure. Le cipher prive di forward secrecy o con MAC SHA-1 sono disabilitate per impostazione predefinita. Il livello di sicurezza 2 vieta le chiavi RSA, DH ed ECC deboli con meno di 112 bit di sicurezza. |
|
I protocolli deprecati SSL 3.0, TLS 1.0 e TLS 1.1 non sono piu” ufficialmente supportati. Python non li blocca attivamente. Tuttavia le opzioni di compilazione di OpenSSL, le configurazioni della distro, le patch del fornitore e le cipher suite possono impedire un handshake riuscito. |
|
Aggiunta di un parametro timeout alla funzione |
|
Il modulo ssl utilizza heap-type e inizializzazione multi-fase. |
|
E” stato aggiunto un nuovo flag di verifica |
|
Aggiunta dell’attributo |
|
Aggiunta di |
|
|
|
Note