欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python的xlwt不能正确写入以及缓冲区问题

程序员文章站 2022-06-02 20:44:52
...

<div class="iteye-blog-content-contain" style="font-size: 14px"></div>

 

最近在使用python的xlwt模块,它和xlrd、xlutil显然从名字上看得出是一套体系。

然后在写入的时候发生了一些故事。

 

 我不能正确的将很多数据写到一个文件里面。这个文件尽管对于excel来说还不是很大,总共1.5M左右,几万个数据。

但是并不像很多人说的那样,4096个字节的缓冲区,如果接近此缓冲区,flush一下内存即可完成存储并且不丢失数据,不产生异常 。

现在是很多数据也不会产生异常,但是会丢失数据,打开xls文件时,会提示无法打开。

 

这个问题是这样测试出来的。

编程实现对一个xls的打开、读取、排序,并写入另一个xls文件。

当数据达到31列,2000行时,输出的文件:发现不可读取的内容。是否恢复此工作簿的内容?

当然,恢复是没恢复过来。

通过逐渐减少行数,发现在148行左右就已经出问题了,而且,每次不一定是在148行出事,有时142行没有问题,有时有问题。那么多少行肯定没问题?按照大家的说法,4096/31,4096=31*132+4,132行肯定没问题?

减少到131行、130行,仍然会出问题,只不过有部分数据恢复了回来。