python学习之路-excel操作-读取excel

博主因需将Excel数据导入MySQL,认为用Python操作比Java更方便,且对Office版本兼容性强。还提到Python的xlrd可读取xls或xlsx,但遇到伪xls文件无法读取,目前网上解决办法行不通,博主只能手动另存为真正的xls文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近需要将excel的数据导入到mysql中,用java写比较麻烦,用python导入操作更加方便,对office的版本兼容性很强。

依赖包

import xlrd

具体方法及相关解释

def readExcel(path):
    #为文件地址xls和xlsx均可以
    try:
        # 获取excel工作簿
        book = xlrd.open_workbook(path)
        print(sys.getsizeof(book))
        return book
    except Exception as e:
        print(e)
        print("open excel file failed!")
    #获取excel所有sheet表名
    sheets = book.sheet_names()
    # 通过表名打开表
    for sheet in sheets:
        sh = book.sheet_by_name(sheet)
        #打开表后获取所有行列
        rows = sh.nrows
        #循环遍历获取每行的值
        for row in rows:
        # for row in range(1,rows) 从第二行开始获取对应一些有标题情况 
        #这里的row_data 是个list 对应该行所有的列值
            row_data = sh.row_values(row)

注意

         在实际使用过程中,会发现python的xlrd可以直接读取xls或者xlsx,但是会遇到一种伪xls文件是无法读取的,这种伪xls一般是xml转的xls 或者是html 传的xls,一般打开会显示扩展名与文件不符,是否继续打开,你用nodepad++ 打开得到的是如图一信息,而不是图二

               

                                                                                       图1 伪xls文件

                                

                                                                                      图2 正经的xls文件

       目前针对这种情况,网上尝试了一下寻找解决办法,但是基本行不通,所以我的办法就是只能手动打开伪xls文件,另存为真正的xls文件,如果有好办法的伙伴们,可以告诉我一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值