Python 讀取 Excel 文件教程

This article was translated from English: Does it need improvement?
Translated
View the article in English

本指南為 Python 開發人員提供使用 IronXL 庫來讀取和編輯 Microsoft Excel 文件的逐步指導。

IronXL 是一個全面的 Excel 文件處理庫,支持多種編程語言,包括 .NETPython 程式語言。本教程專門針對在 Python 腳本中使用 IronXL 來讀取和編輯 Microsoft Excel 文件。

如需關於如何在 .NET 應用程式中讀取和編輯 Microsoft Excel 文件的單獨教程,請參閱以下內容 這裡使用 IronXL for Python 軟體庫在 Python 中讀取和創建 Excel 文件非常容易。


概述


教程

步驟1:在您的Python專案中添加IronXL作為依賴項

要將IronXL庫整合到您的Python專案中,您必須使用廣泛使用的Python套件管理工具 pip 來安裝它作為依賴項。打開終端並執行以下命令:

 pip install IronXL

這將安裝指定版本的IronXL到你的專案中,使其可以被匯入。

請注意
IronXL for Python依賴於IronXL .NET庫,特別是.NET 6.0,作為其底層技術。因此,有必要擁有.NET 6.0 SDK 安裝在您的機器上才能使用IronXL for Python。


2. 加载 Excel 工作簿

WorkBook 類別代表一個 Excel 工作表。要打開一個 Excel 文件,我們使用 WorkBook.Load 方法並指定 Excel 文件的路徑。

# Load existing spreadsheet
workbook = WorkBook.Load("Spreadsheets\\GDP.xlsx")
PYTHON

每個 WorkBook 可以包含多個 WorkSheet 物件。每個物件都代表 Excel 文件中的一個單一工作表。使用 WorkBook.GetWorkSheet 方法來檢索特定 Excel 工作表的引用。

# Assuming workBook is an existing instance of WorkBook
workSheet = workBook.GetWorkSheet("GDPByCountry")
PYTHON

建立新的 Excel 文件

要建立新的 Excel 文件,請使用有效的文件類型來構建新的 WorkBook 對象。

# Create a new WorkBook with the specified Excel file format
workBook = WorkBook(ExcelFileFormat.XLSX)
PYTHON

注意:使用ExcelFileFormat.XLS來支援舊版的Microsoft Excel (95 及以前).

添加工作表到 Excel 文檔

如前所述,IronXL for Python 的 WorkBook 包含一個或多個 WorkSheet 的集合。

這是一個包含兩個工作表的工作簿在Excel中的樣子。

這是一個包含兩個工作表的工作簿在Excel中的樣子。

要創建新工作表,請使用工作表的名稱調用 WorkBook.CreateWorkSheet

workSheet = workBook.CreateWorkSheet("GDPByCountry")
PYTHON

3. 訪問儲存格值

讀取和編輯單個儲存格

通過從其 WorkSheet 中檢索所需的儲存格來訪問個別電子表格儲存格的值,如下所示:

# Load existing spreadsheet
workbook = WorkBook.Load("test.xlsx")
worksheet = workbook.DefaultWorkSheet

# Access cell B1 in the worksheet
cell = worksheet["B1"]
PYTHON

IronXL for Python 的 Cell 类代表 Excel 試算表中的單個單元格。它包含屬性和方法,使用戶能夠直接訪問和修改單元格的值。

每個 WorkSheet 對象管理一個索引,該索引包含對應 Excel 工作表中每個單元格值的 Cell 對象。在上面的源代碼中,我們通過行和列索引用來引用所需的單元格。 (在這個情況下, 單元格 B1) 使用標準數組索引語法。

使用對 Cell 對象的引用,我們可以讀取和寫入電子表格單元格中的數據:

# Access cell B1 in the worksheet
cell = workSheet["B1"]

# Read the value of the cell as a string
value = cell.StringValue
print(value)

# Write a new value to the cell
cell.Value = "10.3289"
print(cell.StringValue)
PYTHON

讀取和寫入單元格範圍的值

Range 類表示 Cell 對象的二維集合。這個集合指的是 Excel 單元格的文字範圍。可以通過在 WorkSheet 對象上使用字符串索引器來獲取範圍。

參數文本可以是單元格的坐標 (例如「A1」,如前所示) 或從左到右、從上到下一範圍的單元格 (例如 "B2:E5")也可以在 WorkSheet 上調用 GetRange

# Access range D2:D101 in the worksheet
range_ = workSheet["D2:D101"]
PYTHON

在電子表格中添加公式

使用 Formula 屬性設置 Cell 的公式。

下面的代碼遍歷每個州並將百分比總數放在列C中。

# Iterate through all rows with a value
for y in range(2, i):
    # Get the C cell
    cell = workSheet[f"C{y}"]
    # Set the formula for the Percentage of Total column
    cell.Formula = f"=B{y}/B{i}"
PYTHON

摘要

IronXL.Excel 是一個獨立的 Python 函式庫,用於讀取各種電子表格格式。它不需要 微軟 Excel 安裝,並且不依賴於Interop。