1. 问题:
如题,本文的目标是新建 csv 文件,在第一行写入标题,并追加写入数据。这里需要注意,标题写入第一行以后,后续就会自动跳过。
2. 解决:
import csv
def write_to_csv(file_name, item):
'''
:params file_name: 保存的文件名
:params item: 要保存的额数据 # 此处保存的数据是 dict 字典格式的
'''
with open("{}.csv".format(file_name), "a+", newline='') as csv_writer:
writer = csv.writer(csv_writer)
#以读的方式打开csv 用csv.reader方式判断是否存在标题。
with open("test.csv", "r", newline="") as csv_reader:
reader = csv.reader(csv_reader)
if not [row for row in reader]:
writer.writerow(item.keys()) # keys 作为第一行标题
writer.writerows(item.values()) # 追加写入 values 值
else:
writer.writerows(item.values()) # 追加写入 values 值
def main():
file_name = 'csv_file_name'
item = {
'key_1': 'value_1',
'key_2': 'value_2'
}
write_to_csv(file_name, item)
if __name__ == '__main__':
main()
网友评论