Python Excel xlsx,xls,csv 格式互转

这篇具有很好参考价值的文章主要介绍了Python Excel xlsx,xls,csv 格式互转。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

常常需要对excel的格式进行转换,借助 win32com 库,可以实现这个功能,下面我封装了下,方便使用。

win32com 表格处理函数底层,不同的格式有不同的数值对应:
比如下面我重点圈出来,常用的3个格式:csv/xlsx/xls

完整的mapping表格,请点击链接 :XlFileFormat enumeration (Excel) | Microsoft Docs

Python Excel xlsx,xls,csv 格式互转
Python Excel xlsx,xls,csv 格式互转


核心代码就下面这几句,打开excel,打开表格,SaveAs另存为指定格式
 			excel = DispatchEx('Excel.Application')
            excel.Visible = False  # 如果是True  会打开excel程序(界面)
            excel.DisplayAlerts = 0  # 不显示警告信息
            wb = excel.Workbooks.Open(input_file)  # 打开一个excel文件 最好使用绝对路径
            wb.SaveAs(out_file, FileFormat= 62)  # 另存为xls格式
            wb.Close()
            excel.Application.Quit()

全部代码:
封装了一个类ExcelFormat,方便调用,excel_format_transform()函数有两个参数,输入表格文件路径和输出的格式
运行完后,输入文件的目录下会生成一个同名但是格式不同的表格文件

'''
Created on 20220607
@author: langGe
@file: AutoRestart
@describer:
excel xlsx /xls /csv之间的格式转换 
'''

import os
from win32com.client import *


class ExcelFormat(object):
    def __init__(self):
        self.excel_format = {"xlsx": 56, "xls": 51, "csv": 62}

    def excel_format_transform(self, input_file, excel_type):
        '''
        :param input_file: 输入表格文件
        :param excel_type: 期望转换的格式, csv/xls等
        :return:
        '''

        input_file = os.path.abspath(input_file) #必须用绝对路径
        filepath, fullname = os.path.split(input_file)
        name, ext = os.path.splitext(fullname)

        if ext == excel_type.lower():
            print("输入表格后缀和期望输出的格式相同")
            return None

        if excel_type.lower() not in self.excel_format.keys():
            print("暂不指出该格式{}转换".format(excel_type.lower()))
            return None

        '''生成输出文件路径'''
        out_file = "{}.{}".format(name, excel_type.lower())
        out_file = os.path.join(filepath, out_file)
        out_file = os.path.abspath(out_file)
        if os.path.exists(out_file):
            os.remove(out_file)

        try:
            excel = DispatchEx('Excel.Application')
            excel.Visible = False  # 如果是True  会打开excel程序(界面)
            excel.DisplayAlerts = 0  # 不显示警告信息
            wb = excel.Workbooks.Open(input_file)  # 打开一个excel文件 最好使用绝对路径
            wb.SaveAs(out_file, FileFormat = self.excel_format[excel_type.lower()])  # 另存为xls格式
            wb.Close()
            excel.Application.Quit()
            print("输出文件", out_file)
            print("转换成功!")
        except Exception as e:
            print("{}表格格式转换失败!".format(input_file))
            print(e)


if __name__ == '__main__':
    for i in sys.argv:
        print(i)
    if len(sys.argv) == 3:
        c = ExcelFormat()
        print("输入文件", sys.argv[1])
        c.excel_format_transform(sys.argv[1], sys.argv[2])

🌎总结

Python Excel xlsx,xls,csv 格式互转

Python Excel xlsx,xls,csv 格式互转文章来源地址https://www.toymoban.com/news/detail-445114.html

  • 🚩要有最朴素的生活,最遥远的梦想,即使明天天寒地冻,路遥马亡!

  • 🚩如果这篇博客对你有帮助,请 “点赞” “评论”“收藏”一键三连 哦!码字不易,大家的支持就是我坚持下去的动力。
    Python Excel xlsx,xls,csv 格式互转

到了这里,关于Python Excel xlsx,xls,csv 格式互转的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python 读写 json,csv,txt,docx,xlsx,xls文件大全

    最近再处理数据的时候,总会用到读写json,csv,xlsx和xls文件代码 这里就做个总结记录一下 扩展: json.loads(line)和 json.load(line) 通用写法: 1.2.1 list类型写入 1.2.2 dict类型写入 注意:json.dump()将Python对象序列化为JSON格式,并将其写入文件中。 扩展:json.dumps()和 json.dump() 2.2.1

    2024年02月06日
    浏览(44)
  • Java Excel转PDF,支持xlsx和xls两种格式, itextpdf【即取即用】

    本篇主要为工具方法整理,参考学习其他博主文章做了整理,方便使用。 1、本地转换 导入依赖 创建工具方法 传入输入输出流或文档地址即可。 2、网络下载 通过POI或者easyExcel生成或填充,再由后端转换PDF响应前端 思路 :将网络下载拆分为本地转换,再响应前端即可。 现

    2024年02月04日
    浏览(44)
  • 文件格式xls和xlsx有什么区别?xlsx和xls选择哪个

    在数字时代,我们经常需要处理各种电子文件,其中xls和xlsx是两种常见的电子表格文件格式。尽管它们只有一字之差,但它们在功能、兼容性和性能等方面有着显著的区别。本文将详细解析这两种文件格式的区别,并指导您如何根据需求选择合适的格式。 XLS是Microsoft Excel的

    2024年01月24日
    浏览(53)
  • 用poi把xls格式转换成xlsx格式

    java中要实现excel新老格式的转换比较麻烦,开源库也没几个好用的。用ChatGpt查询也是推荐直接用POI,下面是借助ChatGPT写出来的代码,经过小小修改,格式转换良好,基本能用,就是效率比较低下。将就着用吧,哎!    

    2024年02月10日
    浏览(36)
  • 【Unity】用Excel库读取Excel表格(.xlsx或者.xls)

    首先需要下载解析的库  EPPlus,  Excel,  ICSharpCode.SharpZipLib    下载链接: https://download.csdn.net/download/weixin_46472622/87238048 使用方法 我的Excel 表格是这样的,每一列有一个 我用一个结构体对象来表示 读取的方法  全部代码,以及调用: 如果是打包PC端的exe,需要将编辑

    2024年02月12日
    浏览(43)
  • 如何用matlab实现矩阵与mat格式、xlsx格式文件互转

    目录 一、前言 二、.mat格式 三、.xlsx格式 四、出现load(‘file.mat’) 数据变成struct结构体的问题 当我们利用matlab去处理我们的实验数据时,常常需要读取mat格式、xlsx格式文件,而且有时候我们又将利用Python去做后续工作,这时候我们就迫切需要了解矩阵与mat格式、xlsx格式

    2024年01月18日
    浏览(45)
  • vue - - - - - 在线预览常见文件格式 .doc, .docx, .xls, .xlsx,.pdf

    关于一些文件的在线预览,最简易的实现方式是什么呢? 写在前面 .png, .jpg, .jpeg 等图片格式 直接预览http/https地址 即可 .pdf 文件 直接预览http/https地址 即可 .doc, .docx, .xls, .xlsx 等类型文件,需要在预览地址之前拼接上 https://view.officeapps.live.com/op/view.aspx?src= .ofd 等类型文件,需

    2024年02月09日
    浏览(73)
  • VBA:Application.GetOpenFilename打开指定文件夹里的excel类型文件(xls、xlsx)

    \\\'GetOpenFilename相当于Excel打开窗口,通过该窗口选择要打开的文件,并可以返回选择的文件完整路径和文件名。 \\\'Application.GetOpenFilename(“文件类型筛选规则(就是说明)”,“优先显示第几个类型的文件”,“标题”,“是否允许选择多个文件名”) 打开类型只限excel文件 \\\'“文件类型

    2024年02月11日
    浏览(46)
  • python xls 转 xlsx

     1、目录下多个xls文件转换 2、增加界面化组件,让用户自行选择文件夹  自动创建文件夹 SaveAs另存为xlsx时需补后缀x,另存为xls时仅路径和文件名即可

    2024年02月10日
    浏览(39)
  • Node.js 使用 officecrypto-tool 读取加密的 Excel (xls, xlsx) 和 Word( docx)文档

    Node.js 使用 officecrypto-tool 读取加密的 Excel (xls, xlsx) 和 Word( docx)文档, 还支持 xlsx 和 docx 文件的加密(具体使用看文档)。暂时不支持doc文件的解密 传送门:officecrypto-tool 读取加密的 Excel 示例 读取加密的 Word 示例 使用:mammoth officecrypto-tool 使用其他的word读取库也是一样的道理

    2024年02月10日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包