csv模块实现以CSV格式读取和写入表格数据的类。该模块是python的内置模块,使用时直接引用即可。
写入
创建一个写入对象
w = csv.writer(f)
f是需要写入的文件句柄,所有的写入操作都是在这个写入对象上完成。
写入单行数据
w.writerow([1001, "北京", ""])
写入多行数据
w.writerows([[1001, "北京", ""], [1002, "湖南", ""], [1003, "湖北", ""]])
同时,该模块也支持使用字典的方式进行写入数据
# 表头
headers = ["学号", "姓名", "分数"]
# 写入的内容
rows = [{"学号": "2022021", "姓名": "张三", "分数": "98"},
{"学号": "2022022", "姓名": "张一", "分数": "98"},
{"学号": "2022023", "姓名": "张二", "分数": "98"}]
# 创建字典的写入方式,f为文件句柄,headers为表头
ws = csv.DictWriter(f, headers)
# 写入表头
ws.writeheader()
# 写入数据
ws.writerows(rows)
读取
import csv
with open('some.csv', newline='') as f:
reader = csv.reader(f)
for row in reader:
print(row)