Python 3.10¶
O Python 3.10.0 (final) foi lançado a 4 de outubro de 2021. As funcionalidades do 3.10 estão definidas na PEP 619 e uma descrição detalhada das alterações pode ser encontrada em What’s New in Python 3.10.
Novas funcionalidades de sintaxe |
Estado |
|
Correspondência Estrutural de Padrões: Especificação |
||
Correspondência Estrutural de Padrões: Motivação e Fundamento |
||
Correspondência Estrutural de Padrões: Tutorial |
||
Gestores de contexto entre parênteses são agora oficialmente permitidos |
||
Novas funcionalidades na biblioteca padrão |
||
Adicionar verificação opcional do comprimento ao zip |
||
Melhorias no interpretador |
||
Números de linha precisos para depuração e outras ferramentas |
||
Novas funcionalidades de tipagem |
||
Permitir escrever tipos de união como X | Y |
||
Aliases de tipos explícitos |
||
Variáveis de especificação de parâmetros |
||
Depreciações, remoções ou restrições importantes |
||
Exigir OpenSSL 1.1.1 ou mais recente |
||
Depreciar o módulo distutils. |
Não relevante |
|
Depreciar e preparar a remoção do membro wstr em PyUnicodeObject. |
Não relevante |
|
Remover as APIs de codificação Py_UNICODE |
Não relevante |
|
Adicionar EncodingWarning opcional |
||
Outras alterações à linguagem:
O tipo |
|
As vistas devolvidas por |
|
PEP 618: A função |
|
As funções incorporadas e de extensão que aceitam argumentos inteiros já não aceitam |
|
Se |
|
As expressões de atribuição podem agora ser utilizadas sem parênteses em literais de conjunto e compreensões de conjunto, bem como em índices de sequências (mas não em fatias). |
|
As funções têm um novo atributo |
|
Foram adicionadas duas novas funções incorporadas – |
|
Os métodos estáticos ( |
|
As anotações para alvos complexos (tudo exceto alvos do tipo |
|
Os objetos de classe e de módulo criam agora de forma lazy dicionários de anotações vazios sob pedido. Os dicionários de anotações são armazenados no |
|
As anotações compostas por |
|
A utilização de variáveis não vinculadas, |
|
Os hashes de valores NaN tanto do tipo |
|
Será levantada uma |
|
As exceções |
Alterações aos módulos incorporados:
Adicionar o método |
|
O método |
|
Adicionar ganchos de auditoria para |
|
O módulo hashlib requer OpenSSL 1.1.1 ou mais recente. |
|
O módulo hashlib tem suporte preliminar para OpenSSL 3.0.0. |
|
O substituto puro em Python de |
|
Adicionar suporte de |
|
Adicionar uma nova função |
|
Adicionar |
|
Adicionar |
|
Adicionar |
|
A exceção |
|
Adicionar opção para criar sockets MPTCP com |
|
Adicionar a opção |
|
O módulo ssl requer OpenSSL 1.1.1 ou mais recente. |
|
O módulo ssl tem suporte preliminar para OpenSSL 3.0.0 e a nova opção |
|
As funções depreciadas e a utilização de constantes depreciadas resultam agora numa |
|
O módulo ssl tem agora definições predefinidas mais seguras. Os cifras sem sigilo futuro (forward secrecy) ou com MAC SHA-1 estão desativados por omissão. O nível de segurança 2 proíbe chaves RSA, DH e ECC fracas com menos de 112 bits de segurança. |
|
Os protocolos depreciados SSL 3.0, TLS 1.0 e TLS 1.1 já não são oficialmente suportados. O Python não os bloqueia ativamente. No entanto, as opções de compilação do OpenSSL, configurações de distribuição, patches de fornecedor e suites de cifras podem impedir um handshake bem-sucedido. |
|
Adicionar um parâmetro timeout à função |
|
O módulo ssl utiliza heap-types e inicialização multifase. |
|
Foi adicionado um novo sinalizador de verificação |
|
Adicionar o atributo |
|
Adicionar |
|
|
|
Notas