Arquivos CSV Python: Como Ler e Analisar Dados de 2 Maneiras
Diego Monutti
Aprenda como trabalhar com arquivos CSV Python usando o módulo csv e a biblioteca pandas, com exemplos práticos para leitura e análise de dados.
O que você vai aprender?
Introdução
Se você está começando na análise de dados com Python, uma das primeiras tarefas essenciais é aprender a trabalhar com arquivos CSV.
Esse formato é amplamente utilizado em planilhas, bancos de dados e ferramentas como Excel, Power BI e sistemas corporativos — por isso entender como manipular esse tipo de arquivo é obrigatório para qualquer pessoa que quer atuar em dados.
A boa notícia é que existem duas formas simples e eficientes de ler e processar arquivos CSV no Python: usando o módulo nativo csv e usando o pandas, uma das bibliotecas mais populares para análise de dados.
Neste guia, você vai aprender a usar ambas — e descobrir qual delas é melhor para cada tipo de projeto. Vamos direto ao código e aos exemplos práticos!
Para fazer o download do(s) arquivo(s) utilizados na aula, preencha com o seu e-mail:
Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.
O que é um arquivo CSV
Um arquivo CSV (Comma-Separated Values) armazena dados tabulares separados por delimitadores — geralmente vírgulas ou ponto-e-vírgula. É um formato leve e compatível com praticamente todas as ferramentas de dados.
Exemplos de usos comuns:
Exportações de Excel e Google Sheets
Bases abertas governamentais
Sistemas ERP e CRM
Integrações entre bancos de dados
Dica: se quiser entender diferenças entre CSV e Excel, veja este conteúdo no blog → Datasets e formatos de arquivo nos projetos de dados (link interno recomendado no final para inserir)
Método 1: lendo arquivos CSV com o módulo csv
Se você quer entender o processo “manual” e aprender o que acontece por trás das funções de alto nível, comece com o módulo padrão csv. Ele já vem integrado ao Python.
Python
import csv
with open("advertising.csv", "r") as arquivo:
arquivo_csv = csv.reader(arquivo, delimiter=",")
for i, linha in enumerate(arquivo_csv):
if i == 0:
print("Cabeçalho: " + str(linha))
else:
print("Valor: " + str(linha))
Explicando o código
Para a primeira forma nós vamos utilizar o método interno onde vamos apenas importar a biblioteca csv e utilizar a estrutura With no Python (nessa postagem mostramos como abrir arquivos no Python).
Nesse código em específico estamos abrindo o arquivo em formato de leitura (por isso o “r”) e estamos utilizando o comando csv.reader que é para ler o arquivo desejado em formato csv e estamos inserindo qual o delimitador desse arquivo.
Esse delimitador nada mais é do que o símbolo que está separando os seus dados. Então como nesse caso nós temos vírgulas separando as informações esse que será o nosso delimitador.
Depois disso nós vamos utilizar uma estrutura de repetição para mostrar todas as informações desse arquivo.
Dentro dessa estrutura de repetição vamos utilizar o enumerate para que o Python possa pegar além das informações da linha pegar também o índice daquela linha.
Dessa forma podemos fazer um tratamento diferente para as linhas desejadas, neste caso, como você pode visualizar, nós identificamos qual é a linha referente ao cabeçalho.
Python Impressionador
Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.
A forma mais popular e eficiente para trabalhar com arquivos CSV no Python é usando o pandas. Com apenas uma linha, você carrega o arquivo como tabela e já pode analisar os dados.
Python
import pandas as pd
tabela = pd.read_csv("advertising.csv", sep=",")
display(tabela)
No Jupyter Notebook, display() deixa a tabela mais organizada, mas print(tabela) também funciona.
Segunda forma de trabalhar com arquivos CSV
Exemplo de análise rápida com pandas
Para finalizar nós temos um exemplo de como você já pode utilizar essas informações com o pandas para facilitar suas análises.
Codigo
print(tabela["TV"].sum())
Esse comando soma todos os valores da coluna TV, ideal para análises exploratórias.
Exemplo prático utilizando pandas
Quando usar cada método
Situação
Melhor abordagem
Aprendizado / scripts simples
csv (nativo do Python)
Análise de dados / Data Science
pandas
Arquivos pequenos
csv ou pandas
Bases grandes / limpeza / transformação
pandas
Conclusão
Neste conteúdo você aprendeu duas formas práticas de trabalhar com arquivos CSV no Python — usando o módulo csv e usando o pandas.
Claro que você pode alternar entre as duas opções e testar qual a vantagem de cada uma delas, mas logo de cara como você pode ter visto utilizar o pandas acaba sendo muito mais fácil e rápido.
Fora que o pandas já é uma biblioteca criada para análise de dados, então você vai ter como fazer diversas análises já com essa biblioteca.
Mas nada te impede de testar as duas possibilidades e ver qual delas é a mais adequada para o problema que estiver tentando solucionar.
Agora você pode escolher o método mais adequado para cada situação e acelerar sua jornada em análise de dados.
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
FAQ — Perguntas Frequentes - Arquivos CSV
1. O que é um arquivo CSV e para que serve?
Um arquivo CSV armazena dados separados por vírgula ou outro delimitador. Ele é usado para importar e exportar dados entre Excel, bancos de dados e ferramentas de análise.
2. Como abrir arquivos CSV no Python?
Você pode abrir arquivos CSV com o módulo nativo csv ou com a biblioteca pandas. csv.reader() e pd.read_csv() são os comandos mais comuns.
3. Qual a diferença entre CSV e Excel?
O CSV é um arquivo simples de texto, enquanto o Excel possui formatações, fórmulas e planilhas múltiplas. CSV é mais leve e ideal para transferir dados entre sistemas.
4. Como ler apenas algumas colunas de um CSV com pandas?
Use o parâmetro usecols, por exemplo: pd.read_csv("arquivo.csv", usecols=["coluna1", "coluna2"])
5. O que fazer quando o CSV não está separado por vírgulas?
Basta alterar o delimitador, por exemplo: pd.read_csv("arquivo.csv", sep=";")
Baixe a planilha de controle de notas fiscais no Excel grátis: calcule ISS e retenções, veja o que está em aberto e gere a cobrança de cada nota de serviço.
Baixe apostilas gratuitas em PDF de Excel, Power BI, Python, Claude e agentes de IA, com exercícios e gabarito. Escolha a sua e comece hoje.
Autor do artigo
Diego Monutti
Analista de Operações e Especialista em Python
Analista de Operações e SEO, além de redator técnico na Hashtag Treinamentos, onde produz conteúdos sobre dados, IA, programação e produtividade. Pós-graduando em Ciência de Dados e Inteligência Artificial pela Universidade Tecnológica Federal do Paraná (UTFPR), com foco em Business Intelligence, Machine Learning, MLOps e Big Data.