我基本上是在试图使用Python从CSV文件中复制一些特定的列,并将这些列粘贴到一个现有的Excel文件[*.xlsx]中。例如,假设您有这样的CSV文件:
col_1 col_2 col_3 col_4
1 2 3 4
5 6 7 8
9 10 11 12
所以,我想要复制col_3和col_4并将它们粘贴到现有的Excel文件(.XLSX格式)中的col_8和col_9中。 我已经尝试了多种方法来解决这个问题,但找不到确切的方法。 我尝试了类似于以下的内容:
with open( read_x_csv, 'rb') as f:
reader = csv.reader(f)
for row in reader:
list1 = row[13]
queue1.append(list1)
list2 = row[14]
queue2.append(list2)
list3 = row[15]
queue3.append(list3)
list4 = row[16]
queue4.append(list4)
然后
rb = open_workbook("Exact file path.....")
wb = copy(rb)
ws = wb.get_sheet(0)
row_no = 0
for item in queue1:
if(item != ""):
ii = int(item)
ws.write(row_no,12,ii)
row_no = row_no + 1
#ws.write(item)
print item
else:
ws.write(row_no,12,item)
row_no = row_no + 1
wb.save("Output.xls")
但是这种解决方案的问题在于它不允许我保存为*.XLSX格式,而这对我来说是必须的。
我尝试使用Openpyxl,因为它可以处理*.XLSX格式,但是找不到修改现有Excel文件的方法。请问有人可以帮忙吗?
疑问: 1) 我们真的能够使用Python从CSV文件中读取整列并存储到数组/列表中吗? 2) 我们能够使用openpyxl或其他任何包修改现有的.XLSX格式的Excel文件吗?