Como usar o python csv dictreader

Como usar o python csv dictreader

O dictreader () é usado para ler o arquivo do CSV no formato do objeto Dict. Vamos discutir como usar o método dictreader () no python.

Antes de iniciarmos o curso principal deste artigo, vamos primeiro entender o que é um arquivo CSV.

O que é um arquivo CSV (Valores Seperados Vírgulas)?:

Um CSV é um arquivo no qual os dados estão na forma de uma escolha de usuário separada por vírgula ou outra escolha do usuário separada. Esses arquivos têm extensão CSV. Este arquivo CSV é usado principalmente na análise de dados. Além da análise de dados, o arquivo CSV também é usado no aplicativo de comércio eletrônico, porque é muito fácil de lidar em todas as diferentes linguagens de programação.

Método dictreader () para ler o nome específico da coluna:

Arquivo CSV: O abaixo é um teste.Arquivo CSV. Este arquivo CSV seremos lidos no dictreader (). Neste programa, não vamos ler todos os dados do arquivo CSV, em vez da coluna do mês, como mostrado no abaixo:

"Mês", "1958", "1959", "1960"
"Jan", 340, 360, 417
"Fev", 318, 342, 391
"Mar", 362, 406, 419
"Apr", 348, 396, 461
"May", 363, 420, 472
"Jun", 435, 472, 535
"Jul", 491, 548, 622
"Aug", 505, 559, 606
"Set", 404, 463, 508
"Oct", 359, 407, 461
"Nov", 310, 362, 390
"DEC", 337, 405, 432

Código Python:

importar CSV
com open ('teste.csv ') como f:
Dictreader_obj = csv.Dictreader (f)
para item em dictreader_obj:
Imprimir (item ['mês'])

Saída:

Jan
Fevereiro
Mar
Apr
PODERIA
Jun
Jul
AUG
Set
OUT
Nov
DEC

Linha 1: Nós importamos o módulo CSV.

Linha 2 a 5: Abrimos o teste.arquivo csv como f, e então criamos um objeto do Dictreader. O objeto (Dictreader_obj) Em seguida, exibe todos os dados do mês da coluna.

Método dictreader () para ler o arquivo CSV como um dicionário:

Agora, vamos ver como podemos ler o CSV como um formato de dicionário. Estamos usando o mesmo teste.arquivo CSV como usamos antes. O exemplo para este método é fornecido abaixo:

importar CSV
com open ('teste.csv ') como f:
Dictreader_obj = csv.Dictreader (f)
para item em dictreader_obj:
Imprimir (ditado (item))

Saída:

'Mês': 'Jan', '"1958"': '340', '"1959"': '360', '"1960"': '417'
'Mês': 'fev', '"1958"': '318', '"1959"': '342', '"1960"': '391'
'Mês': 'mar', '"1958"': '362', '"1959"': '406', '"1960"': '419'
'Mês': 'abr', '"1958"': '348', '"1959"': '396', '"1960"': '461'
'Mês': 'maio', '"1958"': '363', '"1959"': '420', '"1960"': '472'
'Mês': 'Jun', '"1958"': '435', '"1959"': '472', '"1960"': '535'
'Mês': 'Jul', '"1958"': '491', '"1959"': '548', '"1960"': '622'
'Mês': 'Aug', '"1958"': '505', '"1959"': '559', '"1960"': '606'
'Mês': 'Sep', '"1958"': '404', '"1959"': '463', '"1960"': '508'
'Mês': 'Oct', '"1958"': '359', '"1959"': '407', '"1960"': '461'
'Mês': 'Nov', '"1958"': '310', '"1959"': '362', '"1960"': '390'
'Mês': 'DEC', '"1958"': '337', '"1959"': '405', '"1960"': '432'

Linha 1: Nós importamos o módulo CSV.

Linha 2 a 5: Abrimos o teste.arquivo csv como f, e então criamos um objeto do dictreader. O objeto continuará a iterar até os dados. O CSV.Dictreader () retornará cada linha do tipo um oramereddict, por isso convertemos cada linha do tipo ordenado para um ditado usando o método de elenco de tipo. O leitor de objeto exibe todos os dados no formato do dicionário, como mostrado na saída acima.

Mas, se você estiver usando o Python mais recente, a conversão do tipo Dic.

Método dictwriter ():

O método Dictwriter faz parte do método Dictreader, onde ajuda a escrever os dados do formato do dicionário no arquivo CSV. Então, neste programa, veremos como podemos escrever os dados do dicionário para o CSV.

importar CSV
com open ('saída.csv ', "w", newline = "", coding = "utf-8-sig") como arquivo de saída:
Writer = CSV.Dictwriter (outfile, ["FirstName", "LastName"])
escritor.writeHeader ()
new_row = "FirstName": "Linux", "LastName": "Dint"
escritor.Writertow (new_row)

OPUT:

Primeiro nome, ultimo nome
Linux, dica

Linha 3 a 7: Abrimos a saída.Arquivo CSV no modo de escrita ('W'). Em seguida, passamos pelo cabeçalho do CSV na forma da lista para o dictwriter enquanto criava o próprio objeto. Temos que contar os nomes das colunas do CSV para o objeto antes de escrever para o CSV; caso contrário, ele gerará um erro porque o objeto não será capaz de entender os nomes -chave do dicionário. Na linha 6, criamos um objeto de ditado e o passamos para o objeto Writertow para escrever no arquivo CSV.

A saída mostra que nossos dados são escritos com sucesso no arquivo CSV.

Método DictWriter () para escrever uma lista de dados de dicionário para CSV:

Neste programa, veremos como podemos escrever uma lista de dados de dicionário para CSV. No exemplo anterior, escrevemos apenas dados de dicionário único para o CSV para entender o conceito. Mas escrevemos CSV com enormes dados na vida cotidiana. Então, vamos ver esse cenário neste exemplo.

importar CSV
com open ('saída.csv ',' w ') como csvfile:
col = ['FirstName', 'LastName', 'GradEpoint']
Writer = CSV.DictWriter (CSVFile, FieldNames = Col)
escritor.writeHeader ()
escritor.Writerws (['gradEpoint': 'B', 'FirstName': 'Jeorge', 'LastName': 'Belly',
'Gradepoint': 'a', 'primeironame': 'krishna', 'lastName': 'kumar',
'Gradepoint': 'c', 'primeironame': 'sheon', 'lastName': 'shaiyer',
'Gradepoint': 'b', 'primeironame': 'janny', 'lastName': 'jeus',
'Gradepoint': 'a', 'primeironame': 'sham', 'lastName': 'sharma'])

Saída:

Primeiro nome, último nome, grau
Jeorge, barriga, B
Krishna, Kumar, A
Sheon, Shaiyer, C
Janny, Jeus, B
Sham, Sharma, A

Linha 3 a 11: Abrimos a saída.Arquivo CSV no modo de escrita ('W'). Em seguida, passamos pelo cabeçalho do CSV na forma da lista para o dictwriter enquanto criava o próprio objeto. Temos que contar os nomes das colunas do CSV para o objeto antes de escrever para o CSV; caso contrário, ele gerará um erro porque o objeto não será capaz de entender os nomes -chave do dicionário. Na linha 7, criamos uma lista de objetos de dicionário e o passamos para o objeto WriterSws para escrever todos os dados no arquivo CSV de uma só vez.

A saída mostra que nossos dados são escritos com sucesso no arquivo CSV.

Conclusão: Neste artigo, aprendemos a usar os métodos dictreader () e dictwriter (). Também vimos a maneira de escrever uma lista de objetos de dicionário para o CSV de uma vez. A principal diferença quando escrevemos uma lista de dicionários ou um único objeto de dicionário é o Method Writerlows. Usamos o método Writerws quando tínhamos mais de um dados e o Writertow quando tínhamos apenas dados únicos.