使用openpyxl插入xls时,保持CSV格式为字符串

问题描述

我非常迷恋代码的最后一部分,该部分显示了从中获取结果和计算的所有原始数据。我希望数据像在csv文件中一样显示,如下所示,但当前显示如下。有人知道如何解决这个问题吗?

(使用python和openpyxl)

This is how I want the data to look

This is how it currently looks

到目前为止,这是我的代码

raw_data = []

for value in match:
    with open(path + value,newline='') as File:
        raw_data.append(value)
        for row in File:
            if "Delta Response" in row:
                raw_data.append(row)
            if "Channel Response" in row:
                raw_data.append(row)
line=1 
for p in raw_data:
    print(p)
    sheet2.cell(row=line,column=1,value=p)

解决方法

for value in match:中,您正在遍历行,并将这些行添加到raw_data数组中,然后在for p in raw_data:中,您正在遍历这些行,并且使用column=1将它们添加到工作表中,因此将所有行都强制放入第一列。我不知道cell命令来自哪个库,但是也许您应该使用row函数,或者在for p in raw_data:内尝试以下操作:

for column_var,cell_value in enumerate(p.split(',')):
    sheet2.cell(row=line,column=column_var,value=cell_value)