将数据写入csv
一.列表写入主要分为
1.创建文件对象
2.创建写入对象 传入文件对象
3.写入表头
4.写入内容
# 列表类型写入
headers = ['姓名','年龄','体重']
li = [('小艾',21,180),('小飞',20,160)]
import csv
with open('c.csv','w',encoding='utf-8',newline='') as f: # newline=''为写入时不添加的空行
# 创建文件对象f
# 1.创建写入对象 传入文件对象
# write-->[(),()]
write = csv.writer(f)
# 2.写入表头
# writerow(序列) 写入单行
write.writerow(headers)
# 3.写入内容
# for i in li:
# 方法一: writerow 单行写入
'''for i in li:
write.writerow(i)'''
#方法二: writerows 同时写入多行
write.writerows(li)
注: 1.方法一中writerow()方法只能单行写入,所以添加了for循环;方法二中writerows()可以同时写入多行,可直接将列表写入。
2.加上newline=''为写入表格时不添加的空行
二.将字典写入主要分为
1.创建文件对象
2.创建写入对象 传入写入对象
3.将表头写入
4.将数据写入
# 字典类型写入
item = [{"姓名":"小艾","年龄":21,"体重":180},
{"姓名":"小飞","年龄":20,"体重":160},
{"姓名":"小于","年龄":24,"体重":200}
]
import csv
with open("数据.csv","w",encoding='utf-8',newline='') as f:
# 1.创建写入对象
# fieldnames = [] 指定表头
# 表头名字和字典里的键一定要一致
# 我们是根据字典里的键去寻找对应的表头名字 如果没有 则报错
write = csv.DictWriter(f,fieldnames=['姓名','年龄','体重'])
# 2.将表头写入
write.writeheader()
# 3.将数据写入
write.writerows(item)
注:1.创建写入对象时,切记 fieldnames =[]指定表头 中的表头必须和所填字典键一致(键的顺序不可改变);
2.如果想要加入表头可以使用 writeheader() 方法,该方法写入的表头与fieldnames =[]中的值一致,若不需要表头可不写
3. 加上newline=''为写入表格时不添加的空行