6 principais recursos úteis do Python 3.10

6 principais recursos úteis do Python 3.10

O Python 3.10 se orgulha de ser uma das versões mais estáveis ​​disponíveis para download pelos usuários e será lançado ainda este ano. A versão recém-lançada virá com muitas mudanças perceptíveis, como funcionalidades fáceis de usar para programadores novatos e experientes.





As melhorias gritantes na nova versão do Python incluem a introdução de correspondência de padrões estruturais, melhores mensagens de erro, novos operadores de união, números de linha precisos para depuração e muito mais.





Aqui está o que você precisa saber sobre Python 3.10:





Correspondência de padrões estruturais em Python 3.10

A correspondência de padrões estruturais torna a escrita de código muito fácil e continua a ser um dos destaques proeminentes da versão mais recente do Python. Python visa melhorar as instruções pré-existentes de caso de correspondência presentes nas versões anteriores da linguagem de programação. Foi feita uma atualização das instruções de caso de correspondência existentes no Python.

Vamos dar uma olhada rápida nas implementações de Correspondência de Padrão Estrutural:



A instrução match-case já faz parte da linguagem Python há algum tempo. Esta declaração é basicamente usada para evitar o trabalho tedioso de escrever o if-else declaração várias vezes.

Você pode comparar com objetos com propriedades semelhantes usando este recurso na nova construção.





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')

A nova biblioteca python reconhece objetos como jpg, gif e vídeos. Este código pode ser executado perfeitamente sem gerar um erro.

2. Mensagens de erro aprimoradas

Todo codificador provavelmente entende a importância dos erros ao escrever o código e como alguns tipos de erro podem ser irritantes. As versões anteriores do Python geravam mensagens de erro assim que surgiam problemas de sintaxe. Isso pode ser devido à sintaxe errada, palavras-chave ausentes, palavras-chave incorretas ou com erros ortográficos, entre outros problemas.





Essas mensagens de erro estavam longe de ser perfeitas, pois era difícil para iniciantes (às vezes, até mesmo usuários avançados) identificar a verdadeira causa do erro em seus códigos. Como programador, o Google continua a ser seu aliado para decifrar o motivo por trás das diferentes mensagens de erro.

como encontrar o seu propósito na vida, questionário

Por exemplo, muitas pessoas podem não saber por que o Python gera o seguinte erro:

SyntaxError: unexpected EOF while parsing error message.

A falta de clareza em tais declarações levou a versão mais recente do Python a melhorar seu conjunto existente de mensagens de erro.

As mensagens mais antigas foram substituídas por mensagens de erro fáceis de entender, como:

{nunca foi fechado EOF inesperado durante a análise

Algumas outras mudanças incluem:

Erros de atributo como:

from collections import namedtoplo

módulo 'coleções' não tem atributo 'namedtoplo'. Você queria dizer namedtuple?

As mensagens NameError são modificadas para se parecerem com:

new_var = 5print(new_vr)>

NameError: o nome 'new_vr' não foi definido. Você quis dizer: new_var?

3. Gerenciadores de contexto entre parênteses

Os novos gerenciadores de contexto entre parênteses podem tornar seu código mais elegante. Mesmo que não seja um recurso importante, pode facilmente tornar seu código menos desajeitado. Esse recurso é benéfico se você trabalha em equipe e seu código precisa ser estruturado.

Imagine escrever uma declaração como:

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

O código acima funciona, mas a primeira linha é muito longa e parece desajeitada. Você pode quebrar a linha usando uma barra invertida ( ) e fazer o código parecer estruturado:

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

Com a introdução do novo gerenciador de contexto entre parênteses, você também pode quebrar a linha usando parênteses:

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

Relacionado: Idéias de projetos Python adequadas para iniciantes

4. Novo tipo de operador de união

Um recurso pequeno, mas útil no Python 3.10 é o novo tipo de operador de união. Cada versão do Python vem com um conjunto predefinido de recursos de dicas de tipo.

diferença entre desktop ubuntu e servidor

O operador de união inclui lógica condicional; por exemplo, int ou flutuador pode ser escrito como União [X, Y] . O novo operador de união pode ser expresso como int | float tb.

A introdução de um novo operando de união no Python 3.10 economiza tempo e faz com que o código pareça bem definido.

Por exemplo:

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

5. Números de linha precisos para depuração

Você deve ter notado muitas vezes antes que o rastreamento de erro não o redireciona para a linha correta onde ocorreu o erro. Isso torna a depuração difícil para codificadores que acabaram de começar a escrever código.

O rastreamento de erro defeituoso é especialmente evidente durante a escrita sys.settrace e ferramentas relacionadas em Python. A versão mais recente melhora isso significativamente, e você pode ver números de linha precisos quando ocorre um erro.

Para trazer um número de linha mais preciso, o Python 3.10 muda sua confiabilidade do atual co_Inotab atributo e usa o novo método co_lines () atributo. Este atributo funciona de forma que o f_lineo sempre contém o número exato da linha.

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

Relacionado: Depure seu código Python

6. Avaliação adiada de anotações

No Python, a avaliação da anotação de tipo é realizada no momento da definição da função. Isso significa que as anotações de tipo são avaliadas linha por linha de cima para baixo.

Mesmo que possa parecer a melhor opção, ainda existem dois problemas para essa abordagem:

  • As dicas de tipo referem-se a tipos que ainda não foram definidos e não funcionam; essas dicas precisam ser expressas como strings.
  • As importações do módulo diminuíram conforme as dicas de tipo são executadas em tempo real.

Para evitar problemas de execução, as anotações são armazenadas em _anotações_ e a avaliação é realizada em conjunto. Isso permite a referência direta conforme as importações de módulo são executadas primeiro, reduzindo assim o tempo de inicialização.

Trabalhando com os recursos mais recentes do Python 3.10

A versão mais recente do Python será lançada em 4 de outubro de 2021; ele promete corrigir os bugs que estão presentes nas versões existentes. As versões a seguir melhorarão a versão 3.10 atual.

O mapeamento de padrão estrutural é o destaque desta nova atualização e torna mais simples a escrita de códigos para objetos semelhantes. Outros recursos, como os gerenciadores de contexto entre parênteses e o novo tipo de Operadores de união, visam tornar o código mais simples e eficiente.

No entanto, existem algumas técnicas excelentes de tratamento de exceções nas versões existentes do Python. Você pode fazer bom uso das funcionalidades do Python.

Compartilhado Compartilhado Tweet O email Como lidar com exceções em Python

Cubra suas bases de codificação com exceções do Python.

Leia a seguir
Tópicos relacionados
  • Programação
  • Programação
  • Pitão
  • Dicas de codificação
Sobre o autor Wini Bhalla(41 artigos publicados)

Wini é um escritor que mora em Delhi, com 2 anos de experiência em redação. Durante suas temporadas como redatora, ela se associou a agências de marketing digital e empresas técnicas. Ela escreveu conteúdo relacionado a linguagens de programação, tecnologia de nuvem, AWS, Machine Learning e muito mais. Nas horas vagas, gosta de pintar, passar o tempo com a família e viajar para a montanha, sempre que possível.

Mais de Wini Bhalla

Assine a nossa newsletter

Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!

Clique aqui para se inscrever