Pitão

Tratamento de arquivos CSV em Python

Tratamento de arquivos CSV em Python
Neste tópico, vamos aprender como ler e escrever arquivos CSV em python.

Definição: CSV (valor separado por vírgula) é semelhante a um arquivo de texto onde os dados armazenados são separados por algum delimitador (geralmente uma vírgula). Cada campo é separado por um delimitador. Em Python, os arquivos CSV são processados ​​usando o módulo CSV. Então, temos que importar este módulo.

Ex: import csv

O exemplo abaixo mostra como os dados são armazenados em um arquivo CSV. Aqui, uma vírgula é usada como delimitador.

Nome do arquivo: person_info.csv
primeiro nome, nome do meio, sobrenome, idade
Anand, kumar, matemática, 31
Sachin, ramesh, tendulakar, 40
Virendra, sehwag, singh, 38
Rahul, dravid, xyz, 40

O arquivo CSV pode ser aberto em qualquer um dos seguintes modos:
r -> modo de leitura
w -> modo de escrita
a -> modo anexar

Em Python, uma operação de arquivo é realizada na seguinte ordem:

Abra um arquivo csv

O método embutido open () é usado.

Ex:

Fechando um arquivo

O método embutido close () é usado.

fp = open ("nome do arquivo.csv ", 'w')
# executa algumas operações de arquivo
fp.perto()

Operações de arquivo usando com

A melhor maneira de executar a operação de arquivo CSV, e o método mais comumente usado, é com a instrução. Usar isso garante que o arquivo seja fechado quando o bloco dentro com for encerrado.

Ex:

com aberto ('nome do arquivo.csv ',' w ', codificação =' utf-8 ') como fp:
#fazer algumas operações de arquivo
# declarações fora do bloco com

Quando saímos com o bloco, o arquivo será fechado automaticamente.

Grave em um arquivo CSV

Para escrever em um arquivo CSV, precisamos abri-lo no modo write 'w' ou anexar o modo 'a'.

No exemplo abaixo, vamos ler de um arquivo e gravar em um novo arquivo.

importar csv
com aberto ('nome do arquivo.csv ',' r ') como fp:
leitor = csv.leitor (fp) #read arquivo
com open ('newfilename.csv ',' w ') como fq:
escritor = csv.escritor (fq, delimitador = '-')
para linha no leitor: # Para iterar sobre cada linha
escritor.writerow (linha) #write linha para novo arquivo

Usando o escritor de dicionário

No exemplo a seguir, vamos ler de um arquivo e gravar em um novo arquivo usando o método DictWriter ().

importar csv
com aberto ('nome do arquivo.csv ',' r ') como fp:
leitor = csv.DictReader (fp) #read file
com open ('newfilename.csv ',' w ', newline = ") as fq: #newline =" para evitar adicionar nova linha extra
row_names = ['primeiro nome', 'nome do meio', 'sobrenome', 'idade']
escritor = csv.DictWriter (fq, fieldnames = row_names, delimiter = '-')
escritor.writeheader () # escreve linhas de título
para linha no leitor:
escritor.escritorow (linha)

Escritores ()

Este método grava várias linhas de uma vez; precisamos passar uma lista de listas. Ex:

importar csv
head_names = ['primeiro nome', 'nome do meio', 'sobrenome', 'idade']
# linhas de dados do arquivo csv
linhas = [['Anand', 'kumar', 'matemática', 31],
['Sachin', 'ramesh', 'tendulakar', 40],
['Virendra', 'sehwag', 'singh', 38],
['Rahul', 'dravid', 'xyz', 40]]
# gravando em arquivo csv
com open ('newfilename.csv ',' w ') como fp:
# criar um objeto de escritor csv
csvwriter = csv.escritor (fp)
# escreva o título
csvwriter.escritor (head_names)
# escrever as linhas de dados
csvwriter.escritor (linhas)

Lendo do arquivo

Para ler o arquivo CSV em Python, devemos abrir o arquivo no modo de leitura 'r'. Ex:

importar csv
com aberto ('nome do arquivo.csv ',' r ') como fp:
dados = csv.leitor (fp)
#default delimiter é vírgula, se csv separado por outro delimitador precisa especificar
#Ex data = csv.leitor (fp, delimitador = '-')
imprimir (dados) # retornar objeto
#skipping the header
próximo (dados) #call próximo método do gerador
para linha nos dados: # Para iterar sobre cada linha
imprimir (linha) # imprimir cada valor em uma lista
fp.buscar (0) # trazer o cursor para a primeira linha
para linha de dados:
imprimir (linha [0]) # imprimir apenas os primeiros nomes

Usando leitor de dicionário

Para ler o arquivo csv usando o método DictReader ().

importar csv
com aberto ('nome do arquivo.csv ',' r ') como fp:
leitor = csv.DictReader (fp) #read file
para linha no leitor:
print (line) #print cada linha na forma de dicionário
fp.buscar (0) # trazer o cursor para a primeira linha
para dados no leitor:
print (data ['age']) # podemos imprimir apenas a idade usando a tecla 'age'

Conclusão

Aprendemos como ler e escrever um arquivo usando o módulo CSV. O arquivo CSV é o formato de arquivo mais comumente usado na indústria de automação porque é fácil de ler e modificar os dados. Além disso, o Pandas é outro método que podemos usar para processar arquivos CSV.

Como mostrar o contador de FPS em jogos Linux
Os jogos Linux tiveram um grande impulso quando a Valve anunciou o suporte Linux para o cliente Steam e seus jogos em 2012. Desde então, muitos jogos ...
Como baixar e jogar Sid Meier's Civilization VI no Linux
Introdução ao jogo Civilization 6 é uma versão moderna do conceito clássico introduzido na série de jogos Age of Empires. A ideia era bastante simples...
Como instalar e jogar Doom no Linux
Introdução ao Doom A série Doom teve origem nos anos 90 após o lançamento do Doom original. Foi um sucesso instantâneo e, a partir desse momento, a sé...