1
resposta

[Dúvida] Boas práticas de importação

Olá, pessoal!
No VS Code, utilizar o import * não me parece o ideal, visto que a origem do método fica oculta e isso dificulta muito a manutenção do código depois. Como no Colab as células são executadas de forma isolada, parece tentador importar tudo de uma vez para ganhar velocidade.
Mas no cotidiano real, em que não se usa apenas o Colab (como/quando usam?), fica a dúvida: até que ponto economizar alguns caracteres digitando sqrt(n) em vez de math.sqrt(n) vale o risco de causar uma confusão de nomes em projetos maiores?
Para quem já trabalha com Ciência de Dados, o uso do import * é comum em notebooks de análise rápida (por isso a dúvida sobre o uso do Colab no dia a dia), ou a boa prática de importar método por método (ou usar apelidos como as pd) prevalece mesmo no nível iniciante?
Acho esse ponto da clareza fundamental, pois nosso código será lido por outras pessoas ou por nós mesmos no futuro!

1 resposta

Olá, Luísa. Como vai?

Sua reflexão é extremamente pertinente e demonstra uma maturidade técnica muito positiva. Você tocou em um ponto central da filosofia do Python, o Zen do Python, que diz: Explicit is better than implicit (Explícito é melhor que implícito).

No dia a dia de quem trabalha com Ciência de Dados, o uso do from biblioteca import * (o chamado wildcard import) é fortemente desencorajado, mesmo em ambientes de notebook como o Google Colab ou Jupyter.

Aqui estão os principais motivos e como as boas práticas prevalecem no mercado:

1. Colisão de Nomes (Namespace)
Imagine que você importa * de duas bibliotecas diferentes e ambas possuem uma função chamada display(). O Python usará a da última biblioteca importada, sobrescrevendo a primeira sem te avisar. Isso gera bugs silenciosos que são terríveis de encontrar.

2. Legibilidade e Manutenção
Como você bem pontuou, se eu vejo um sqrt() solto no código, não sei se ele vem da biblioteca math, da numpy ou de uma função própria. Em projetos reais, onde os arquivos podem ter centenas de linhas, saber a origem de cada método economiza horas de depuração.

3. Performance e Poluição da Memória
Ao importar tudo, você carrega para a memória do seu ambiente objetos, variáveis e funções que nunca serão utilizados, "poluindo" o seu espaço de trabalho (Namespace).

O que prevalece no cotidiano real?

Na prática profissional, utilizamos três abordagens principais:

  • Importação com Apelidos (Aliases): É o padrão absoluto para as grandes bibliotecas de dados.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

Isso mantém o código curto, mas mantém a clareza da origem: pd.DataFrame(), np.array().

  • Importação Explícita: Quando você precisa de apenas uma ou duas funções de um módulo grande.
from sklearn.model_selection import train_test_split
from math import sqrt
  • Uso do Colab vs. VS Code: No dia a dia, o Colab/Jupyter é muito usado para Exploração de Dados (EDA) e prototipagem rápida. Já o VS Code (ou PyCharm) é usado quando essa análise precisa virar um produto, uma API ou um script de automação. Mesmo no Colab, os profissionais mantêm os padrões de importação com apelidos para garantir que o código possa ser movido para produção sem retrabalho.

Dica de ouro:
Se você estiver usando o VS Code, uma ferramenta excelente para te ajudar com isso é o Pylance (extensão oficial da Microsoft). Ele sublinha importações não utilizadas e te ajuda a organizar os pacotes automaticamente, seguindo as normas da PEP 8, que é o guia de estilo oficial do Python.

Mantenha esse foco na clareza! Na Ciência de Dados, o trabalho é colaborativo, e um código legível é o maior presente que você pode deixar para seus colegas e para a sua "versão do futuro".

Espero que possa ter lhe ajudado!