我有一个功能,可以选择要使用的列的索引(自动,基于列标题中的文本),结果是一个列表,类似于以下示例中的列表:
>>>print(usable_data_index)
[0, 2, 5, 7] #It may be like this
[0, 3, 4, 5, 6, 10] #Or like this one
[1, 2] #Or this
#It may vary.
然后我只想将包含索引的列写入 usable_data_index 中(这是我不知道的方法)。 我知道我可以这样写特定的列:
for row in csv_reader:
csv_writer.writerow((row[0], row[1], row[3], row[4]))
但是在那种情况下,我必须手动指定索引。 希望你理解这个问题。
答案 0 :(得分:2)
在您的for循环内,添加一个名为rows_to_add的元组,并将其传递给csv writer:
rows_to_add=(row[index] for index in usable_data_index)
csv_writer.writerow(rows_to_add)