我的csv输出没有按照我计划的方式出来。 我的代码:
first_row = list(ws.rows)[1]
first_row_values = []
first_row_values.append(value1)
first_row_values.append(value2)
first_row_values.append(value3)
first_row_values.extend([cell.value for cell in first_row])
print(first_row_values)
writer = csv.writer(open('output.csv', 'a+'))
writer.writerow([first_row_values])
文件中的输出如下所示:
"['value1', 'value2', 'value3', 'valueA', 'valueB', 'valueC', 'valueD', 'valueE', 'valueF', 'valueG', 'valueH', 'valueI', 'valueJ']"
我期待 csv 输出:
'value1', 'value2', 'value3', 'valueA', 'valueB', 'valueC', 'valueD', 'valueE', 'valueF', 'valueG', 'valueH', 'valueI', 'valueJ'
我在这里错过了什么?
正如Mad Physicist和Anton vBR所说,方括号的集合,[]
,是问题所在。当你在python中将这些括号放在某些东西周围时,它将在执行时创建一个列表。因此,通过将列表对象 first_row_values
放在方括号内,您将列表嵌套在新列表中,作为其唯一元素。
只需删除方括号即可获得结果。
writer.writerow(first_row_values)