Python 为什么我的excel文件大小会跳到0 Kb';s由Panda更新时';s

Python 为什么我的excel文件大小会跳到0 Kb';s由Panda更新时';s,python,excel,pandas,Python,Excel,Pandas,我正在使用Python(3.7)和Panda对公司数据进行web搜索,然后将每个结果写入一个output.xlsx文件。输出文件在每次迭代后不断更新。我在一台有8吉格内存的机器上做这件事 但是,我注意到,当运行较大的数据集(+12k行)时,输出文件大小从大约2000KB下降到0KB,然后在移动到下一行时又回到2000KB 问题是,如果在输出文件恰好为0 Kb时停止脚本(或发生崩溃),文件就会损坏,我将丢失所有内容 我不确定该在这里寻求什么样的解决方案。在read_excel中是否有我应该使用的设

我正在使用Python(3.7)和Panda对公司数据进行web搜索,然后将每个结果写入一个output.xlsx文件。输出文件在每次迭代后不断更新。我在一台有8吉格内存的机器上做这件事

但是,我注意到,当运行较大的数据集(+12k行)时,输出文件大小从大约2000KB下降到0KB,然后在移动到下一行时又回到2000KB

问题是,如果在输出文件恰好为0 Kb时停止脚本(或发生崩溃),文件就会损坏,我将丢失所有内容

我不确定该在这里寻求什么样的解决方案。在read_excel中是否有我应该使用的设置?或者可能需要在“卓越”上做些什么

我是这里的新手,边学边学,所以任何帮助都将不胜感激

Tks, 莱姆

我看过关于“酸洗”和让熊猫“分块”阅读文件的讨论。但不清楚这是否能解决我的问题


更新我错了,因为这个问题仅限于大文件大小。xlsx文件大小将跳转到0 Kb,无论大小如何。在处理较大的文件时,这一点更为明显。我的问题仍然是:如果我的脚本在最后一次写入之前停止,并且输出文件的阶段目前已降至0 Kb,那么我将丢失以前写入的所有数据。

由于XLSX格式,我不相信excel文件可以成批读/写。(例如,在read_excel中没有
chunksize
参数)。您每次都需要读写整个文件(这就是为什么它会暂时变为0,然后又变回完整大小)。也许您正在寻找更多类似于
csv
的东西,您可以在附加模式下编写。或者做所有的处理,最后只写一次。谢谢,阿洛兹。因此,基本上,我会在“附加模式”中将我的设置切换为读/写csv,然后运行最终的另存为xlsx?您是如何构造代码的?也许在迭代过程中对数据进行处理,但在完成所有操作之前不要写入文件,这样就不会在过程中出现损坏的风险?谢谢,Krrr。我将在搜索每一行后将找到的结果写入文件,这样如果必须停止搜索,就不会丢失任何内容。这种方法很有效,因为我经常不得不停止。但是现在对于更大的文件,这似乎是个问题。听起来你应该将每个块写入它自己的文件,一旦你处理了整个输入文件,就决定如何合并结果。这将防止程序尝试读取或写入过大的文件。