WJ

Werner Júnior16/09/2024 18:54
Compartilhe

7 Hacks Interessantes em Python para Acelerar Seu Código

    Se você já programa em Python, sabe que ele é uma linguagem simples e poderosa. Eu mesmo, com a ajuda de alguns amigos que entendem bem mais do assunto, venho descobrindo várias maneiras de otimizar e deixar o código mais eficiente. Mesmo quem já tem experiência sempre acaba aprendendo truques novos. Aqui estão 7 hacks que eu aprendi e que podem te ajudar no dia a dia, seja para economizar tempo ou deixar seu código mais elegante e performático.

    1. Trocar Variáveis sem Variável Temporária

    Uma das vantagens de Python é a possibilidade de trocar o valor de duas variáveis sem precisar de uma terceira variável temporária. Em linguagens mais tradicionais, você usaria uma terceira variável para fazer isso, mas no Python basta uma linha de código.

    
    a, b = b, a
    

    Simples, direto e eficaz! Isso economiza tempo, especialmente quando você está lidando com múltiplas trocas de variáveis.

    2. Usar List Comprehension para Manipular Listas

    Se você ainda não usa list comprehension, está perdendo uma forma poderosa de trabalhar com listas. É uma maneira concisa de criar listas a partir de outras listas ou iteráveis.

    squares = [x**2 for x in range(10)]
    

    Isso é equivalente a usar um loop for tradicional, mas com muito menos código. Além de ser mais elegante, pode ser mais rápido em grandes datasets.

    3. Juntar Strings com join em vez de +

    Concatenar strings usando + pode ser muito ineficiente em Python. Se você precisar juntar várias strings, prefira o método join, que é muito mais rápido e economiza memória.

    
    strings = ["Olá", "mundo", "!"]
    frase = " ".join(strings)
    

    Esse método não só é mais limpo, como também evita problemas de performance com grandes conjuntos de dados.

    4. Dicionários com get() para Evitar Erros

    Quando você tenta acessar um valor em um dicionário, pode correr o risco de receber um erro se a chave não existir. Para contornar isso, use o método get().

    
    dicionario = {"nome": "João"}
    idade = dicionario.get("idade", 18)  # Retorna 18 se a chave não existir
    

    Isso economiza tempo evitando a necessidade de checar se a chave está presente no dicionário e previne erros inesperados.

    5. enumerate() para Iterar com Índices

    Quantas vezes você já criou uma variável separada só para armazenar o índice de um loop? O Python tem uma função embutida chamada enumerate() que faz isso automaticamente.

    
    nomes = ["Ana", "Bruno", "Carlos"]
    for indice, nome in enumerate(nomes):
      print(f"{indice}: {nome}")
    

    Isso não só simplifica o código, mas também o deixa mais legível.

    6. zip() para Agrupar Listas

    Se você já precisou combinar duas ou mais listas e iterar sobre elas ao mesmo tempo, zip() é o que você está procurando. Ele combina os elementos de múltiplas listas em pares (ou trios, quartetos, etc.).

    
    nomes = ["Ana", "Bruno", "Carlos"]
    idades = [25, 30, 22]
    for nome, idade in zip(nomes, idades):
      print(f"{nome} tem {idade} anos.")
    

    Isso facilita muito o trabalho com datasets múltiplos.

    7. Usar Counter para Contar Ocorrências em Listas

    Se você precisa contar quantas vezes um item aparece em uma lista, a biblioteca collections tem a solução perfeita. O Counter faz isso em apenas uma linha de código.

    
    from collections import Counter
    ocorrencias = Counter(["maçã", "banana", "maçã", "laranja", "banana", "maçã"])
    print(ocorrencias)
    

    Essa é uma forma eficiente e rápida de contar itens em listas ou qualquer iterável.

    Esses hacks podem não só acelerar seu código, mas também deixá-lo mais simples e legível. Conforme você for experimentando, vai perceber que algumas dessas práticas se tornam naturais e economizam muito tempo em projetos maiores. Então, da próxima vez que estiver codificando, lembre-se de aplicar essas dicas para fazer o máximo da flexibilidade e do poder que o Python oferece!

    Compartilhe
    Comentários (1)
    Claudio Santos
    Claudio Santos - 16/09/2024 19:34

    Muito bacana!