zoukankan      html  css  js  c++  java
  • from xlutils.copy import copy 解决:导致Excel文件打不开(Excel无法打开文件,因为文件格式或文件扩展名无效,请确定文件未损坏,并且文件扩展名与文件的格式匹配)

    使用python的xlutils.copy模块,进行文件数据写入,保存之后打不开

    Excel文件后缀是xlsx,进行操作之后,打不开文件;(解决:把后缀xlsx改成xls就可以打开;或者文件一开始的后缀就是xls

    import xlrd
    from xlutils.copy import copy
    
    file = 'D:/hunter_/demo3.xlsx'  # 文件路径
    data = xlrd.open_workbook(file)  # 定义一个excel文件的workbook对象
    print('data的类型为:', type(data))
    data_copy = copy(data)  # 获取data的copy对象
    print('data的copy对象类型为:', type(data_copy))
    sheet_copy = data_copy.get_sheet(0)  # 从data_copy对象中获取第一个sheet对象
    
    sheet_copy.write(2, 11, '测试写入内容')  # 向sheet的某个单元格写入值
    data_copy.save('demo3.xlsx')  # 写入完成后保存data的copy对象

     改成xls文件能正常打开

    注意:

    xlrd模块0.8版本后不支持以xlsx为后缀名文件,所以使用这个方法的时候,excel要用xls格式的,不然会导致保存的文件无法打开

    xlutils最新的2.0版本只能支持copy xls格式的excel文件,如果copy的是xlsx再保存,那么新生成的文件将无法打开。

  • 相关阅读:
    vue项目使用async await 封装 axios
    vue实现预览功能(包括doc,pdf,图片,视频)
    vue中实现下载文件功能
    vue项目中加入拖放排序功能
    Vue项目中生成二维码
    position跟display、overflow、float这些特性相互叠加后会怎么样?
    localStorage使用注意
    webpack 使用总结
    cookie作用域
    语法糖的理解
  • 原文地址:https://www.cnblogs.com/hemingwei/p/11585799.html
Copyright © 2011-2022 走看看