【问题标题】:Python: Writing to Excel 2007+ files (.xlsx files)Python:写入 Excel 2007+ 文件(.xlsx 文件)
【发布时间】:2010-11-23 15:36:05
【问题描述】:

是否有编写 Excel 2007+ 文件的 Python 模块?
我有兴趣编写超过 65535 行的文件,并且只有 Excel 2007+ 支持它。

【问题讨论】:

    标签: python excel excel-2007 openpyxl


    【解决方案1】:

    看看 Eric' Gazoni 的 openpyxl 项目。代码可以在bitbucket找到。

    【讨论】:

      【解决方案2】:

      您可以查看两个库。

      Python-xlsxPyXLSX

      编辑:正如 cmets 所提到的,写信请查看openpyxl

      【讨论】:

      • -1 OP 想要写入 Excel 2007+ 文件。 Python-xlsx:“用于解析 来自 Office Open XML 电子表格的数据的小 Python 代码 - xlsx”; pyXLSX: "pyXLSX - 用于读取 Excel 2007 文件的python 类库"
      【解决方案3】:

      你应该看看xlsxcessive。它用于编写 xlsx 文件,并且可能更 Python 一些。

      【讨论】:

      • 我也更喜欢 xlsxcessive 来编写 xlsx 文件。支持合并单元格,openpyxl不支持。
      • 这个还在维护吗?对 bitbucket 的提交似乎突然停止了(直到 2011-04-30 之前非常正常,然后什么都没有)。
      • 可能不是。那是开发人员换工作的时候,所以我想他停止了更新。 :(
      • 郑重声明,openpyxl 现在支持合并单元格。
      【解决方案4】:

      XlsxWriter Python 模块写入 2007+ xlsx 文件。

      【讨论】:

        【解决方案5】:

        如果您在 Windows 上并安装了 Excel 2007+,您应该能够使用 pywin32 和 COM 编写 XLSX 文件,使用几乎与编写 XLS 文件相同的代码...只需更改“另存为....”结尾部分。

        您可能还可以使用 Excel 2003 和可免费下载的附加套件编写 XLSX 文件,但每张纸的行数将限制为 64K。

        【讨论】:

          【解决方案6】:

          Pyvot:http://packages.python.org/Pyvot/tutorial.html,虽然它仅适用于 Excel 2010+

          【讨论】:

            【解决方案7】:

            这应该给出如何做到这一点的想法:

            import xlsxwriter
            
            workbook = xlsxwriter.Workbook("output_file.xlsx"))
            # new sheet
            worksheet = workbook.add_worksheet("sheet_name")
            # Add a number format: 3 digits precision
            precision = workbook.add_format({'num_format': '0.000'})
            
            for(iterate your data):
                worksheet.write(row, col, title)
                worksheet.write_number(row, col, value, precision)
                ...
            
            workbook.close()
            

            【讨论】:

              【解决方案8】:

              所以你想写 xlsx 文件,我想到了 Microsoft.office.excel.interop dll,但不要在服务器上使用它。

              我知道你可以从 python 调用 dll :http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel(office.11).aspx

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2018-11-17
                • 2021-01-17
                • 1970-01-01
                相关资源
                最近更新 更多