在python中,将数据写入到csv文件中分为将列表形式数据写入和将字典形式数据写入,在使用csv相关操作时,需要加载csv模块
列表形式
将列表形式数据写入到csv文件中,主要使用到了csv.writer
、writerow
和writerows
函数,分别是将打开的文件描述符转化为csv对象,写入单行数据、写入多行数据
import csv
head = ["name","age"]
data = [
("小明",12),
("小小",12),
("小大",14),
]
with open("test.csv","w",encoding="utf-8") as f:
csvf = csv.writer(f)
csvf.writerow(head)
csvf.writerows(data)
test.csv文件内容如下,发现每行数据下面多了一行空格,这个现象会在window操作系统中出现,如果是linux系统就不会出现。可以在打开文件时,添加newline=""
,上面open("test.csv","w",encoding="utf-8")
改为open("test.csv","w",encoding="utf-8",newline="")
就可以解决换行问题
字典形式
将字典形式内容写入到csv文件中,主要使用了csv.DictWriter
、writeheader
、writerow
以及writerows
函数
import csv
head = ["name","age"]
d_data=[
{"name":"小明","age":12},
{"name":"小小","age":13},
{"name":"小大","age":15},
]
with open("dtest.csv","w",encoding="utf-8",newline="") as f:
csvf = csv.DictWriter(f,head)
csvf.writeheader()
csvf.writerows(d_data)
dtest.csv文件内容如下