【发布时间】:2019-11-12 04:39:01
【问题描述】:
我正在设置一个脚本,我需要为我的 for 循环的每个增量写一个新行。
目前,我先写标题,然后再写下一行,但每次递增时,它都会擦除我的行以写入新数据。
headers = [['Name', 'Age']]
for i in range(10):
line = [[str(name), str(age)]]
with open('myfile.csv', 'w', newline="") as f:
writer = csv.writer(f, delimiter=';')
writer.writerows(headers)
writer.writerows(line)
writer.writerows('\n')
我正在尝试使用writer.writerows('\n') 设置下一行,但它不起作用。
我认为第二行总是被覆盖,但我不知道如何使用我的循环跳转到下一行。提前致谢。
【问题讨论】:
-
您的循环不应该在您的
with内,而不是相反吗? -
是的。它应该在
with和headers中的for,就在for之前。writerows写了一整行,所以不需要\n。 -
我很困惑为什么在这里使用
writerows。只需从headers和line中删除多余的list包装,就可以调用普通的writerow。
标签: python python-3.x csv for-loop