Python 3.10¶
O Python 3.10.0 (final) foi lançado em 4 de outubro de 2021. Os recursos da versão 3.10 estão definidos na PEP 619 e uma descrição detalhada das mudanças pode ser encontrada em O que há de novo no Python 3.10.
Novos recursos de sintaxe |
Status |
|
Correspondência Estrutural de Padrões: Especificação |
||
Correspondência Estrutural de Padrões: Motivação e Justificativa |
||
Correspondência Estrutural de Padrões: Tutorial |
||
Gerenciadores de contexto entre parênteses agora são oficialmente permitidos |
||
Novos recursos na biblioteca padrão |
||
Adicionar verificação opcional de comprimento ao zip |
||
Melhorias no interpretador |
||
Números de linha precisos para depuração e outras ferramentas |
||
Novos recursos de tipagem |
||
Permitir escrever tipos de união como X | Y |
||
Aliases de Tipo Explícitos |
||
Variáveis de Especificação de Parâmetros |
||
Descontinuações, remoções ou restrições importantes |
||
Exigir OpenSSL 1.1.1 ou mais recente |
||
Descontinuar o módulo distutils. |
Não relevante |
|
Descontinuar e preparar a remoção do membro wstr em PyUnicodeObject. |
Não relevante |
|
Remover as APIs do codificador Py_UNICODE |
Não relevante |
|
Adicionar EncodingWarning opcional |
||
Outras Mudanças na Linguagem:
O tipo |
|
As views retornadas por |
|
PEP 618: A função |
|
Funções embutidas e de extensão que recebem argumentos inteiros não aceitam mais |
|
Se |
|
Expressões de atribuição agora podem ser usadas sem parênteses dentro de literais de conjunto e compreensões de conjunto, bem como em índices de sequência (mas não em fatias). |
|
As funções têm um novo atributo |
|
Duas novas funções embutidas – |
|
Métodos estáticos ( |
|
Anotações para alvos complexos (tudo além dos alvos |
|
Objetos de classe e de módulo agora criam preguiçosamente dicionários de anotações vazios sob demanda. Os dicionários de anotações são armazenados no |
|
Anotações que consistem em |
|
O uso de variáveis não vinculadas, |
|
Os hashes de valores NaN, tanto do tipo |
|
Um |
|
As exceções |
Mudanças nos módulos embutidos:
Adiciona o método ausente |
|
O método |
|
Adiciona 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. |
|
A implementação alternativa em Python puro de |
|
Adiciona suporte a |
|
Adiciona uma nova função |
|
Adiciona |
|
Adiciona |
|
Adiciona |
|
A exceção |
|
Adiciona a opção de criar sockets MPTCP com |
|
Adiciona 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 uma nova opção |
|
Funções descontinuadas e o uso de constantes descontinuadas agora resultam em um |
|
O módulo ssl agora tem configurações padrão mais seguras. Cifras sem sigilo de encaminhamento ou com MAC SHA-1 estão desabilitadas por padrã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 descontinuados SSL 3.0, TLS 1.0 e TLS 1.1 não são mais oficialmente suportados. O Python não os bloqueia ativamente. No entanto, opções de compilação do OpenSSL, configurações de distribuição, patches de fornecedores e suítes de cifras podem impedir um handshake bem-sucedido. |
|
Adiciona um parâmetro timeout à função |
|
O módulo ssl usa heap-types e inicialização em múltiplas fases. |
|
Um novo sinalizador de verificação |
|
Adiciona o atributo |
|
Adiciona |
|
|
|
Notas