Escrever lista para CSV em Python
-
Escrever lista para o CSV em Python Utilizando o
csv.writer()
Método - Escrever lista para CSV em Python utilizando o método de aspas
-
Escrever lista para CSV em Python utilizando o método
pandas
-
Escreve a lista para CSV em Python utilizando o método
NumPy
Um ficheiro CSV pode armazenar os dados num formato tabular. Estes dados são um texto simples; cada linha de dados é chamada o registo, e cada um pode ser separado com vírgulas.
Este artigo irá discutir os diferentes métodos para escrever uma lista para o CSV em Python.
Escrever lista para o CSV em Python Utilizando o csv.writer()
Método
Vamos primeiro importar o módulo csv
:
import csv
Suponhamos que levamos as seguintes entradas para escrever num ficheiro CSV.
RollNo, Name, Subject
1, ABC, Economics
2, TUV, Arts
3, XYZ, Python
Agora, o código completo do exemplo é o seguinte:
import csv
with open("students.csv", "w", newline="") as student_file:
writer = csv.writer(student_file)
writer.writerow(["RollNo", "Name", "Subject"])
writer.writerow([1, "ABC", "Economics"])
writer.writerow([2, "TUV", "Arts"])
writer.writerow([3, "XYZ", "Python"])
Se executar os códigos acima, o ficheiro students.csv
será criado, em termos de linha, no directório actual com as entradas que estão presentes no código. A função csv.writer()
irá criar o objecto writer()
, e o comando writer.writerow()
irá inserir as entradas em linha no ficheiro CSV.
Escrever lista para CSV em Python utilizando o método de aspas
Neste método, veremos como podemos escrever valores em ficheiro CSV com citações. O código completo do exemplo é o seguinte:
import csv
list = [["RN", "Name", "GRADES"], [1, "ABC", "A"], [2, "TUV", "B"], [3, "XYZ", "C"]]
with open("studentgrades.csv", "w", newline="") as file:
writer = csv.writer(file, quoting=csv.QUOTE_ALL, delimiter=";")
writer.writerows(list)
O ficheiro studentgrades.csv
será criado no directório actual. A função csv.QUOTE_ALL()
coloca aspas duplas em todas as entradas, utilizando um delimitador ;
para separação.
Resultado:
RN;"Name";"GRADES"
1;"ABC";"A"
2;"TUV";"B"
3;"XYZ";"C"
Escrever lista para CSV em Python utilizando o método pandas
Este método utiliza a biblioteca Pandas, que possui um quadro de dados completo. Se não tiver esta biblioteca instalada no seu PC, pode utilizar uma ferramenta online chamada Google Colab.
O código completo do exemplo é o seguinte:
import pandas as pd
name = ["ABC", "TUV", "XYZ", "PQR"]
degree = ["BBA", "MBA", "BSC", "MSC"]
score = [98, 90, 88, 95]
dict = {"name": name, "degree": degree, "score": score}
df = pd.DataFrame(dict)
df.to_csv("test.csv")
Resultado:
name degree score
0 ABC BBA 98
1 TUV MBA 90
2 XYZ BSC 88
3 PQR MSC 95
Este método grava a lista Python num ficheiro CSV como uma moldura de dados.
Escreve a lista para CSV em Python utilizando o método NumPy
Este método utiliza a biblioteca NumPy
para guardar uma lista num ficheiro CSV em Python. O código completo do exemplo é o seguinte:
import numpy as np
list_rows = [
["ABC", "COE", "2", "9.0"],
["TUV", "COE", "2", "9.1"],
["XYZ", "IT", "2", "9.3"],
["PQR", "SE", "1", "9.5"],
]
np.savetxt("numpy_test.csv", list_rows, delimiter=",", fmt="% s")
A função savetxt()
da biblioteca NumPy
irá escrever um ficheiro CSV a partir da lista Python.
Resultado:
ABC COE 2 9
TUV COE 2 9.1
XYZ IT 2 9.3
PQR SE 1 9.5
Artigo relacionado - Python CSV
- Leia CSV para Array em Python
- Anexar nova linha a um arquivo CSV em Python
- Converter arquivo CSV em arquivo JSON em Python
- JSON para CSV em Python
- Converter o CSV em Dicionário em Python
- Escrever Dicionário no CSV em Python