Enjoy the good lift everyday!
关闭
欢迎来PyGo个人空间 ^_^
解决Python处理Excel65535的问题 | PyGo²

解决Python处理Excel65535的问题

问题描述

使用Python去处理表格的时候,居然报错,提示为:
undefined

Python

基于xlrd、xlwt进行Excel的处理,其包中对单个Sheet限制最大行数为65535,当读写数据超出这个范围就会出现如上错误。

解决方案

可以使用openpyxl包,其最大行数为1048576,存储的文件类型为xlsx,但是弊端就是不能读取xls老的Excel格式文件。
对于这个,我在项目中想了一个解决方案,判断是xls格式就用xlrd、xlwt包的方法;xlsx就用openpyxl。
如果是xls并且行数超过65536,让用户上传xlsx格式的文件,网上有xls、xlsx格式的转换,有需要的可以找找。

如果使用openpyxl读取.xls文件,报错:

1
2
3
raise InvalidFileException(msg)
openpyxl.utils.exceptions.InvalidFileException: openpyxl does not support the old .xls file format,
please use xlrd to read this file, or convert it to the more recent .xlsx file format.

  • 本文作者:mingliang.gao【一个爱老婆Python程序猿。。。。。。】
  • 本文链接: http://pygo2.top/articles/26307/
  • 版权声明: 本博客所有文章欢迎转载,转载请注明出处!
觉得有帮助 请偶坐个公交车
0%