Formulário de contato

Nome

E-mail *

Mensagem *

Imagem

Como gerar variáveis dinamicamente em Python usando exec()

Como gerar variáveis dinamicamente em Python usando exec()

Publicado por em

@CanalQb Python - Gerando variáveis dinamicamente com exec()
@CanalQb

Introdução

Em Python, é possível criar variáveis dinamicamente durante a execução do programa, utilizando a função exec(). Isso pode ser útil em situações onde é necessário gerar múltiplas variáveis com nomes semelhantes, evitando a repetição manual de código.

Exemplo prático de criação dinâmica de variáveis

for i in range(1, 6):
    exec(f"var{i} = {i}")
print(var1, var2, var3, var4, var5)

Este código gera cinco variáveis chamadas var1, var2, var3, var4 e var5, atribuindo a cada uma o valor do próprio índice i. Em seguida, o programa imprime os valores dessas variáveis.

Como funciona o comando exec()

A função exec() executa o código Python passado como string em tempo de execução. No exemplo acima, a string f"var{i} = {i}" gera expressões como var1 = 1, var2 = 2, etc., que são executadas criando variáveis no escopo atual.

Alternativas mais seguras: uso de dicionários

Apesar de exec() ser poderoso, seu uso pode ser arriscado, especialmente se o código gerado envolver dados externos, pois pode abrir brechas de segurança. Além disso, variáveis criadas dinamicamente podem dificultar a manutenção do código.

Uma abordagem mais recomendada é usar um dicionário para armazenar valores dinamicamente:

vars_dict = {}
for i in range(1, 6):
    vars_dict[f"var{i}"] = i
print(vars_dict["var1"], vars_dict["var2"], vars_dict["var3"], vars_dict["var4"], vars_dict["var5"])

Isso mantém as variáveis organizadas e acessíveis, além de evitar riscos do exec().

Quando usar criação dinâmica de variáveis

Geração dinâmica de variáveis pode ser útil para:

  • Scripts rápidos e experimentais.
  • Gerenciamento de configurações que mudam em tempo de execução.
  • Automação de tarefas onde nomes de variáveis precisam ser construídos programaticamente.

No entanto, para projetos maiores e manutenção a longo prazo, o uso de estruturas de dados como dicionários, listas e classes é mais adequado.

Conclusão

O Python permite flexibilidade para criar variáveis dinamicamente usando exec(), mas deve-se usar essa técnica com cautela. A melhor prática para armazenar dados relacionados dinamicamente é utilizar coleções como dicionários.

Recursos oficiais:

Marcadores: Blogger Python Script Sistemas Tutorial

© fevereiro 13, 2023 CanalQb — Python, Scripts, Automação, Airdrops e Criptomoedas | Web3 e Tech na Prática

Comentários