(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa
Python para dados
Python para dados 4 min

Como ler um ficheiro CSV com pandas em Python: guia

João Barros 04 de July de 2026 4 min de leitura

Ler dados de um ficheiro CSV é quase sempre o primeiro passo de qualquer análise em Python, e a biblioteca pandas torna essa tarefa rápida e fiável. Com poucas linhas de código consegue carregar milhares de registos, tratar acentos e separadores diferentes, e ficar pronto para explorar os dados. A seguir fica o caminho completo, do zero à primeira exploração, com os erros mais comuns já resolvidos.

Pré-requisitos

  • Python 3.9 ou superior instalado no seu computador.
  • A biblioteca pandas, que se instala com pip install pandas.
  • Um ficheiro CSV de exemplo — neste guia usamos vendas.csv.
  • Um editor ou notebook à escolha: VS Code, Jupyter ou a linha de comandos.

Passo 1: Instalar e importar o pandas

Se ainda não tem o pandas instalado, comece por instalá-lo a partir do terminal. Depois, importe a biblioteca no início do seu script com o nome abreviado pd, uma convenção que praticamente toda a comunidade Python usa. Assim o seu código fica mais curto e mais fácil de ler.

Como ler um ficheiro CSV com pandas em Python: guia
pip install pandas
import pandas as pd

Passo 2: Ler o ficheiro CSV com read_csv

A função read_csv lê o ficheiro e devolve um DataFrame, que é simplesmente uma tabela com linhas e colunas. No caso mais simples, basta indicar o nome do ficheiro. O método head mostra apenas as cinco primeiras linhas, o suficiente para confirmar que o ficheiro foi lido como esperava.

df = pd.read_csv("vendas.csv")
print(df.head())

Se o ficheiro estiver noutra pasta, indique o caminho completo, por exemplo "C:/dados/vendas.csv". Repare que usamos a barra normal, que funciona em todos os sistemas.

Passo 3: Ajustar separador, acentos e decimais

Muitos ficheiros CSV criados em Portugal usam ponto e vírgula como separador de colunas e vírgula como separador decimal. Se todas as colunas aparecerem coladas numa só, ou se os acentos vierem trocados, ajuste estes três parâmetros.

df = pd.read_csv(
    "vendas.csv",
    sep=";",
    decimal=",",
    encoding="utf-8",
)

Se ainda vir acentos estranhos, experimente encoding="latin-1", muito comum em ficheiros exportados do Excel.

Dica: abra o ficheiro num editor de texto simples antes de o ler. Ver a primeira linha diz-lhe logo qual é o separador e se existe cabeçalho.

Passo 4: Fazer uma primeira exploração

Depois de ler os dados, confirme que ficaram bem com três comandos muito úteis. O head mostra as primeiras linhas, o info resume os tipos de cada coluna e quantos valores existem, e o describe dá estatísticas rápidas das colunas numéricas.

print(df.head())
print(df.info())
print(df.describe())

Passo 5: Ler apenas as colunas necessárias

Em ficheiros grandes, ler só as colunas de que precisa poupa memória e torna tudo mais rápido. Use o parâmetro usecols com a lista de colunas que quer manter.

df = pd.read_csv(
    "vendas.csv",
    sep=";",
    usecols=["data", "produto", "total"],
)

Verificar o resultado

Para ter a certeza de que a leitura correu bem, confirme o número de linhas e colunas com df.shape, que devolve um par no formato (linhas, colunas). Verifique também os tipos com df.dtypes: uma coluna de valores deve aparecer como int64 ou float64, e não como object, que indica texto.

print(df.shape)
print(df.dtypes)

Se uma coluna que devia ser numérica aparecer como texto, a causa é quase sempre o separador decimal. Volte ao Passo 3 e reveja o parâmetro decimal.

Conclusão

Com read_csv e um punhado de parâmetros já consegue carregar quase qualquer ficheiro CSV em Python de forma fiável. O passo seguinte natural é limpar os dados: tratar valores em falta, remover duplicados e converter as datas para o tipo correto. Qual vai ser o primeiro ficheiro CSV que vai abrir com o pandas?

Partilhar: