跳過到頁腳內容
使用 IRONXL FOR PYTHON

如何在 Python 中導出到 Excel

Python's flexibility also includes its smooth integration with Excel, a popular spreadsheet program. It provides developers with several choices for effectively using Python to export data to Excel (XLSX file) using a wide range of open-source tools. This post will examine IronXL's strong performance as a Python library substitute for C# data export to an Excel target file.

How to Export Data to Excel using Python

To export data to Excel using Python, follow these steps:

  1. Import the required libraries.
  2. Prepare or retrieve your data.
  3. Create a Workbook or DataFrame object for exporting data.
  4. Populate the object with your data.
  5. Save the object to an Excel file using the appropriate method.
  6. Optionally, close the file or perform additional operations.

Pandas

Pandas is a powerful Python package for handling data analysis and missing data representation. One of its numerous functions is support for exporting data to Excel. Pandas offers a simple way to export DataFrames to Excel files using the to_excel() function. Developers can alter export settings, including sheet name, index inclusion, optional column label, and formatting choices. Pandas is the recommended option for exporting structured data to Excel due to its interaction with other data processing features.

How to Export Data to Excel using Python: Figure 1 - Pandas

OpenPyXL

A package called OpenPyXL was created expressly for using Excel files with Python code. OpenPyXL operates at a lower level than Pandas, giving developers more precise control over the format and content of Excel documents. Users may programmatically generate multiple sheets, and edit, and export Excel files using OpenPyXL. For activities requiring sophisticated Excel manipulation, like dynamically inserting formulas, charts, and formatting features, this package is well-suited. Even though OpenPyXL has a higher learning curve than Pandas, it provides unmatched versatility for Excel export operations.

How to Export Data to Excel using Python: Figure 2 - OpenPyXL

XlsxWriter

A Python library called XlsxWriter is used to create Excel files with an emphasis on memory savings and performance. Large datasets are easily handled by this library, and it produces intricate Excel documents quickly. Many functionalities are supported by XlsxWriter, such as cell merging, chart generation, and worksheet formatting. Because of its optimized architecture, XlsxWriter is the best option for situations requiring fast Excel export, such as batch processing jobs and data-intensive applications.

How to Export Data to Excel using Python: Figure 3 - XlsxWriter

xlrd and xlwt

The sibling libraries xlrd and xlwt allow you to read and write Excel files in Python, respectively. These libraries are still useful in some situations, even if their main purpose is to handle older Excel file formats (like .xls). xlrd and xlwt are very helpful for developers who have to work with older Excel file formats or legacy systems. However, because of their improved functionality and performance, Pandas, OpenPyXL, or XlsxWriter are typically advised for the more recent Excel formats (.xlsx).

How to Export Data to Excel using Python: Figure 4 - xlrd

Tablib

A flexible library called Tablib can handle tabular data in many different formats, including Excel. Tablib is a feature-rich tool for exporting data to Excel files; however, it isn't as feature-rich as Pandas or OpenPyXL. For developers who need to export data in a variety of formats with ease, Tablib provides a handy solution with support for several output formats, such as Excel, CSV, and JSON. Tablib is a good choice for small-scale Excel export jobs or projects that need multi-format data export capabilities because of its lightweight design and user-friendly interface.

How to Export Data to Excel using Python: Figure 5 - Tablib

IronXL

Managing Excel files with ease is essential for many C# programming applications, such as data processing and report creation. One powerful option that shows up is IronXL, which gives developers an extensive toolkit to easily work with Excel files. We will explore the features of IronXL in this post and show you how it may be a strong substitute for Python libraries when it comes to Excel automation tasks.

  • IronXL is a well-known C# Excel spreadsheet library for .NET Core and .NET Framework.
  • IronXL supports almost every .NET Framework, such as the Web application, Windows Form application, and Console.
  • Windows, Linux, and macOS are just a few of the operating systems that IronXL is compatible with.
  • Excel file reading is quick and easy with IronXL.
  • A variety of Excel file types, including XLSX files, XLS files, CSV, TSV, XLST, XLSM, and others, may be read by IronXL. In addition, we can edit, export, and import datasets.
  • We can export and save files with many other suffixes, such as XLS, comma-separated values files, TSV, JSON, and others, using IronXL.
  • IronXL can produce computations in Excel and format cells of the Excel sheets.
  • Many Excel column data types, including text, integers, formulas, dates, currencies, and percentages, are supported by IronXL.

To know more about IronXL, refer here.

Install IronXL

Using the command line, follow these steps to install IronXL.

In Visual Studio, go to Tools -> NuGet Package Manager -> Package Manager Console.

Write the following syntax into the Package Manager's Console tab:

pip install IronXL

The package is ready for usage as it downloads and installs to the active project.

Export to Excel file

With IronXL, creating data tables to CSV files is simple and rapid. It facilitates data writing to a fresh CSV file.

We must first include the IronXL namespace, which is necessary to utilize its classes and methods in our code.

Below is a sample code for exporting a DataTable to an Excel file using IronXL:

using IronXL;
using IronXL.Formatting;
using System.Data;

public class ExcelExporter
{
    public static void Main(string[] args)
    {
        ExportToExcel("H:\\test.xls");
    }

    public static void ExportToExcel(string filePath)
    {
        // Create a DataTable and define columns
        DataTable table = new DataTable();
        table.Columns.Add("DataSet_Fruits", typeof(string));

        // Adding rows to the DataTable
        table.Rows.Add("Apple");
        table.Rows.Add("Orange");
        table.Rows.Add("Strawberry");
        table.Rows.Add("Grapes");
        table.Rows.Add("Watermelon");
        table.Rows.Add("Bananas");
        table.Rows.Add("Lemons");

        // Create a workbook and set the format to XLS
        WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLS);
        var worksheet = workbook.CreateWorkSheet("Sheet1");

        // Add the DataTable data to the worksheet
        int rowCount = 0;
        foreach (DataRow row in table.Rows)
        {
            worksheet["A" + (rowCount + 1)].Value = row[0].ToString();
            rowCount++;
        }

        // Save the workbook to the specified file path
        workbook.SaveAs(filePath);
    }
}
using IronXL;
using IronXL.Formatting;
using System.Data;

public class ExcelExporter
{
    public static void Main(string[] args)
    {
        ExportToExcel("H:\\test.xls");
    }

    public static void ExportToExcel(string filePath)
    {
        // Create a DataTable and define columns
        DataTable table = new DataTable();
        table.Columns.Add("DataSet_Fruits", typeof(string));

        // Adding rows to the DataTable
        table.Rows.Add("Apple");
        table.Rows.Add("Orange");
        table.Rows.Add("Strawberry");
        table.Rows.Add("Grapes");
        table.Rows.Add("Watermelon");
        table.Rows.Add("Bananas");
        table.Rows.Add("Lemons");

        // Create a workbook and set the format to XLS
        WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLS);
        var worksheet = workbook.CreateWorkSheet("Sheet1");

        // Add the DataTable data to the worksheet
        int rowCount = 0;
        foreach (DataRow row in table.Rows)
        {
            worksheet["A" + (rowCount + 1)].Value = row[0].ToString();
            rowCount++;
        }

        // Save the workbook to the specified file path
        workbook.SaveAs(filePath);
    }
}
Imports IronXL
Imports IronXL.Formatting
Imports System.Data

Public Class ExcelExporter
	Public Shared Sub Main(ByVal args() As String)
		ExportToExcel("H:\test.xls")
	End Sub

	Public Shared Sub ExportToExcel(ByVal filePath As String)
		' Create a DataTable and define columns
		Dim table As New DataTable()
		table.Columns.Add("DataSet_Fruits", GetType(String))

		' Adding rows to the DataTable
		table.Rows.Add("Apple")
		table.Rows.Add("Orange")
		table.Rows.Add("Strawberry")
		table.Rows.Add("Grapes")
		table.Rows.Add("Watermelon")
		table.Rows.Add("Bananas")
		table.Rows.Add("Lemons")

		' Create a workbook and set the format to XLS
		Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
		Dim worksheet = workbook.CreateWorkSheet("Sheet1")

		' Add the DataTable data to the worksheet
		Dim rowCount As Integer = 0
		For Each row As DataRow In table.Rows
			worksheet("A" & (rowCount + 1)).Value = row(0).ToString()
			rowCount += 1
		Next row

		' Save the workbook to the specified file path
		workbook.SaveAs(filePath)
	End Sub
End Class
$vbLabelText   $csharpLabel

In the code sample above, we are exporting the DataTable to an Excel file. The DataTable is initialized and populated with data representing a list of fruits. We create a new Excel workbook with the WorkBook.Create() method and add the data from the DataTable to the workbook using a loop. Finally, the SaveAs() method is used to save the workbook to the specified file path.

How to Export Data to Excel using Python: Figure 7 - Worksheet Output

Above is the output of the code sample that was run. Every piece of information from the data table has been separately added to the freshly created Excel sheet in the screenshot.

To learn more about the IronXL code example, click here.

Conclusion

Python's open-source Excel export modules enable developers to work effectively and efficiently on a broad range of tasks, including creating complicated Excel reports, processing significant information, and interfacing with legacy Excel formats. Developers may improve their productivity in Python-based applications and optimize their Excel export workflows by utilizing the capabilities and best practices of these packages.

IronXL is a potent substitute for Excel data export for C# developers, offering complete Excel compatibility, excellent performance, and smooth integration with the .NET framework. IronXL makes the process of exporting Excel documents in C# simpler with its user-friendly API and fine-grained control over Excel documents. This allows developers to create dynamic Excel reports, data visualizations, and more. C# developers may depend on IronXL to simplify Excel-related processes and enable the complete functionality of Excel within their C# programs, regardless of whether they are creating desktop, online, or mobile apps.

At launch, IronXL is available for $799. For updates and product assistance, users may also choose to pay a one-year membership fee. IronXL provides security for unrestricted redistribution for an extra charge. Click here to look up more approximate cost information. Go here to learn more about Iron Software.

常見問題解答

如何使用 Python 將數據匯出到 Excel?

您可以利用此類庫如 Pandas、OpenPyXL 或 XlsxWriter 使用 Python 將數據匯出到 Excel。這些庫提供了創建、操縱和儲存數據到 Excel 文件的功能。例如,Pandas 提供了to_excel()方法來直接將 DataFrame 匯出到 Excel 文件。

使用 IronXL 進行 Excel 自動化在 Python 中有什麼好處?

儘管 IronXL 主要為 C# 設計,但在與 Python 一起使用時,它用作 Excel 自動化的一個強大的選擇。它兼容多個操作系統,支持多種 Excel 文件類型,並透過其易於使用的 API 簡化數據匯出過程,這使其非常適合創建動態的 Excel 報告和可視化。

我應該使用哪個 Python 庫將大型數據集匯出到 Excel?

由於記憶體效率和表現,建議使用 XlsxWriter 將大型數據集匯出到 Excel。它設計用來有效處理大型數據集,並能快速生成複雜的 Excel 文檔,具有如單元格合併和圖表生成的功能。

我可以使用 Python 將數據匯出到舊的 Excel 格式嗎?

是的,您可以使用例如 xlrd 和 xlwt 這樣的庫將數據匯出到舊的 Excel 格式如 .xls。這些庫對於處理遺留系統是有用的,雖然現代庫如 Pandas、OpenPyXL 或 XlsxWriter 被偏愛用於較新的 Excel 格式。

OpenPyXL在Excel文件操作中扮演著什麼角色?

OpenPyXL 提供了對 Excel 文檔格式和內容操作的詳細控制。它允許您以程式方式創建和編輯 Excel 文件,包括多個工作表、公式和圖表,這使得它在 Python 中成為一個靈活的 Excel 文件操作選擇。

Tablib 如何促進將數據匯出到 Excel?

Tablib 是一個靈活的庫,可處理包括 Excel 在內的各種格式的表格數據。雖然它可能不如 Pandas 或 OpenPyXL 功能豐富,但它提供了一個簡便的解決方案,用於以多種格式匯出數據,使其適用於小規模的 Excel 匯出任務。

使用 Pandas 將數據匯出到 Excel 的優勢是什麼?

Pandas 是 Python 中一個強大的數據分析庫,它簡化了將數據匯出到 Excel 的過程。透過其to_excel()功能,開發者可以輕鬆地將 DataFrame 匯出到 Excel 文件,選項包括定制工作表名稱,包含或排除索引,以及應用各種格式化選項。

如何安裝用於管理 Excel 文件的 Python 庫?

要安裝用於管理 Excel 文件的 Python 庫,可以使用 pip 包管理器。例如,要安裝 Pandas,您可以在終端機或命令提示符中執行命令pip install pandas

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。