Como manipular arquivos CSV no Python

Cansado de programar?

Cansado(a) de quebrar a cabeça para aprender a programar Python de verdade?

Conheça a melhor e mais completa formação de Python e Django e sinta-se um programador verdadeiramente competente. Além de Python e Django, você também vai aprender Banco de Dados, SQL, HTML, CSS, Javascript, Bootstrap e muito mais!

Quero aprender Python e Django de Verdade! Quero aprender!
Suporte

Tire suas dúvidas diretamente com o professor

Suporte

Projetos práticos voltados para o mercado de trabalho

Suporte

Formação moderna com foco na prática profissional

Salve salve Pythonista 👋

Neste artigo, iremos explorar a manipulação de arquivos CSV (Comma Separated Values) usando a linguagem de programação Python.

Os arquivos CSV são amplamente utilizados para armazenar dados tabulares de forma simples e eficiente.

Portanto, é essencial que programadores Python tenham conhecimento sobre como manipulá-los.

Vá Direto ao Assunto…

Por que aprender a manipular arquivos CSV com Python?

A manipulação de arquivos CSV é uma tarefa comum para programadores Python em vários domínios, como processamento de dados, análise de dados, geração de relatórios e muito mais.

É importante saber como ler, escrever e manipular arquivos CSV usando Python, pois isso permite automatizar várias tarefas e processar grandes quantidades de dados de forma eficiente.

Lendo arquivos CSV

Vamos começar aprendendo a ler arquivos CSV usando Python.

Para isso, usaremos o módulo csv que já vem embutido na biblioteca padrão do Python.

O módulo csv nos fornece várias funcionalidades para trabalhar com arquivos CSV de forma fácil e eficiente.

Para ler um arquivo CSV, primeiro precisamos abrir o arquivo usando a função open.

Em seguida, usaremos o objeto de arquivo retornado para criar um leitor de CSV usando a função csv.reader.

O exemplo a seguir demonstra como ler um arquivo CSV chamado dados.csv:

1
2
3
4
5
6
import csv

with open('dados.csv', 'r') as arquivo:
    leitor_csv = csv.reader(arquivo)
    for linha in leitor_csv:
        print(linha)

Neste exemplo, usamos um with statement para garantir que o arquivo seja fechado corretamente após o uso.

Em seguida, criamos um leitor de CSV usando o objeto de arquivo retornado pela função open.

Por fim, iteramos sobre as linhas do arquivo usando um loop for e imprimimos cada linha.

Está curtindo esse conteúdo? :thumbsup:

Que tal receber 30 dias de conteúdo direto na sua Caixa de Entrada?

Sua assinatura não pôde ser validada.
Você fez sua assinatura com sucesso.

Assine as PyDicas e receba 30 dias do melhor conteúdo Python na sua Caixa de Entrada: direto e sem enrolação!

Manipulando dados CSV

Agora que sabemos como ler um arquivo CSV, vamos aprender como manipular os dados contidos nele.

A manipulação de dados CSV envolve várias tarefas, como filtrar linhas, selecionar colunas específicas e calcular estatísticas.

O exemplo a seguir demonstra como filtrar linhas em um arquivo CSV:

1
2
3
4
5
6
7
8
import csv

with open('dados.csv', 'r') as arquivo:
    leitor_csv = csv.reader(arquivo)
    next(leitor_csv)  # pula a primeira linha (cabeçalho)
    for linha in leitor_csv:
        if linha[2] == 'Brasil':
            print(linha)

Neste exemplo, usamos a função next para pular a primeira linha do arquivo, que geralmente contém o cabeçalho.

Em seguida, verificamos se o valor da terceira coluna (índice 2) é igual a “Brasil” e, se for, imprimimos a linha.

Dessa forma, filtramos apenas as linhas que atendem a essa condição.

Além disso, podemos selecionar colunas específicas em um arquivo CSV usando a indexação adequada.

O exemplo a seguir ilustra como selecionar apenas as colunas 1 e 3 de um arquivo CSV:

1
2
3
4
5
6
import csv

with open('dados.csv', 'r') as arquivo:
    leitor_csv = csv.reader(arquivo)
    for linha in leitor_csv:
        print(linha[0], linha[2])

Neste exemplo, imprimimos apenas as colunas 1 e 3 de cada linha do arquivo.

As colunas são indexadas a partir de zero, então a primeira coluna é representada pelo índice 0, a segunda coluna pelo índice 1 e assim por diante.

Tá curtindo, que tal aprender Python DE VERDADE?! :point_down:

Escrevendo em arquivos CSV

Além de ler dados de um arquivo CSV, também podemos escrever dados em um arquivo CSV usando Python.

Para escrever em um arquivo CSV, usamos a função csv.writer juntamente com o objeto de arquivo retornado pela função open.

O exemplo a seguir demonstra como escrever dados em um arquivo CSV:

1
2
3
4
5
6
7
8
9
10
11
12
13
import csv

dados = [
    ['Nome', 'Idade', 'País'],
    ['João', '25', 'Brasil'],
    ['Maria', '30', 'Portugal'],
    ['José', '35', 'Espanha']
]

with open('dados.csv', 'w', newline='') as arquivo:
    escritor_csv = csv.writer(arquivo)
    for linha in dados:
        escritor_csv.writerow(linha)

Neste exemplo, criamos uma lista de listas chamada dados, onde cada lista representa uma linha do CSV.

Em seguida, abrimos o arquivo dados.csv em modo de escrita, usando a opção w.

Usamos o parâmetro newline='' para evitar caracteres de nova linha indesejados.

Por fim, usamos um loop for para escrever cada linha do dados no arquivo CSV usando a função writerow do objeto escritor de CSV.

Conclusão

Neste artigo, exploramos a manipulação de arquivos CSV com Python.

Aprendemos como ler arquivos CSV, filtrar linhas, selecionar colunas específicas e escrever dados em um arquivo CSV. Manipular arquivos CSV é uma habilidade essencial para programadores Python, pois permite trabalhar com dados tabulares de forma simples e eficiente.

Espero que este guia prático tenha sido útil para você começar a trabalhar com arquivos CSV em Python.

Continue praticando e experimentando para aprimorar suas habilidades de manipulação de dados!

Até a próxima! 👋

Começe agora sua Jornada na Programação!

Não deixe para amanhã o sucesso que você pode começar a construir hoje!

#newsletter Olá :wave: Curtiu o artigo? Então faça parte da nossa Newsletter! Privacidade Não se preocupe, respeitamos sua privacidade. Você pode se descadastrar a qualquer momento.