我使用openpyxl进行数据处理。
第一次,我将数据复制代码文件写入文件(xlsx-> xlsx)以进行测试。
# open input file
wb = load_workbook(filename='input.xlsx', read_only=True)
ws = wb['sheet name']
# create output file
out = Workbook(write_only=True)
out_sh = out.create_sheet('sheet name')
# copy data
for rows in ws:
out_sh.append(cells.value for cells in rows)
# save file
out.save('output.xlsx')
wb.close()
out.close()
在openpyxl中,我使用输入文件大小为394 MB,并且有6张。5张纸的尺寸是1048576行×17(A〜Q)列。我的内存大小为8 GB,通常在使用中为66%(空闲状态,大约剩余2.5 GB)。最后一张纸的尺寸很小。我测试了[[一张大纸。
read_only
和write_only选项进行优化,但是当我为仅1张(不是整个394MB文件)运行数据复制代码时,得到的是MemoryError 。如果添加了数据分析代码,它将只能处理较小的文件。我还没有尝试过大文件处理的任何[[优化技术
?