csv文件中的11列,第1列的标题是'Week',其余标题是'Person1','Person2'......'Person10'。 使用csv的writerow在for循环中将多行写入csv文件。但是如何编写循环来编写每一列?例如:
writer.writerow({'Week': xxx,
for i in range (1, 11):
'Person{}'.format(i): some value,
})
答案 0 :(得分:1)
我认为writerow
不需要您在每个调用中传入带有标题名称的字典。您只需将字段值的列表/可迭代值作为字符串传递。
无论如何,如果你用“列表理解”(Pythonic方式)替换上面的for
循环,你可以实现的目标。
fieldnames = ['Week'] + ['Person{}'.format(i) for i in range(1,11)]
writer.writerow(dict(fieldnames, [xxx] + [value for i in range(1,11)]))
您需要填写逻辑以在第二个value
循环的每次迭代中获得for
。