实现函数
writer = csv.writer(),获取一个文件写入器对象,再通过writer.writerow()函数写入数据。同理csv.reader()可以读取csv文件。
测试代码
## 要存入的字典数据
dic1 = {'height':175, 'age':18, 'weight':60}
dic2 = {'height':178, 'age':17, 'weight':61}
dic3 = {'height':172, 'age':18, 'weight':70}
dic = [dic1, dic2, dic3]
def write2csv(features, row_exist): ## 写入数据
header = list(features.keys()) ##获取列名
datas = list(features.values()) ##获取数据
with open('test1.csv', 'a', newline='', encoding='utf-8') as f: ##'test1.csv'为要存入的文件名,'a'为追加
writer = csv.writer(f) ##写入器对象,csv.reader(f)则返回阅读器对象
if row_exist == 0: ## 没有写入行
writer.writerow(header) # 写入列名
writer.writerow(datas) # 写入数据
for i, f in enumerate(dic):
write2csv(f, i)
测试结果
只写入一遍列名
通过row_exist 参数来实现,只有第一次加入的数据时才需要加入字典的key值。