如何使用IronXL在Python中讀取Excel文件
本指南為 Python 開發人員提供逐步指示,說明如何使用 IronXL 庫來讀取和編輯 Microsoft Excel 文件。
IronXL 是一個全面的 Excel 文件處理庫,支持多種編程語言,包括 .NET 和 Python 編程語言。 本教學專門介紹如何在 Python 腳本中使用 IronXL 來讀取和編輯 Microsoft Excel 文件。
關於如何在 .NET 應用程式中讀取和編輯 Microsoft Excel 文件的單獨教程,請參閱以下這裡。
使用 IronXL for Python 軟體庫在 Python 中讀取和創建 Excel 文件很容易。
概述
如何在 Python 中讀取 Excel 檔案
- 下載 Python 庫以讀取 Excel 文件
- 載入並讀取 Excel 文件 (工作簿)
- 建立 CSV 或 XLSX 格式的 Excel 活頁簿
- 编辑單元格範圍內的單元格值
- 驗證試算表數據
- 使用 Entity Framework 匯出數據
教程
步驟 1:在您的 Python 專案中添加 IronXL 作為依賴項
要將 IronXL 庫整合到您的 Python 專案中,您必須使用廣泛使用的 Python 套件管理工具pip 安裝它作為依賴項。 打開終端機並執行以下命令:
pip install IronXL
此操作將在您的項目中安裝指定版本的IronXL,使其可供導入。
[{i:(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")
每個WorkBook
可以有多個WorkSheet
物件。 每一個代表Excel文件中的單個Excel工作表。 使用WorkBook.GetWorkSheet
方法來取得特定Excel工作表的參考。
# Assuming workBook is an existing instance of WorkBook
workSheet = workBook.GetWorkSheet("GDPByCountry")
創建新的 Excel 文件
要建立新的 Excel 文件,請使用有效的檔案類型構建新的 WorkBook
物件。
# Create a new WorkBook with the specified Excel file format
workBook = WorkBook(ExcelFileFormat.XLSX)
注意:使用ExcelFileFormat.XLS
來支援舊版的 Microsoft Excel(95及更早版本)。
將工作表添加到 Excel 文件中
如先前所述,IronXL for Python 的WorkBook
包含一個或多個WorkSheet
的集合。
要創建新的工作表,請使用工作表的名稱呼叫WorkBook.CreateWorkSheet
。
workSheet = workBook.CreateWorkSheet("GDPByCountry")
3. 訪問儲存格值
讀取和編輯單一儲存格
存取個別試算表儲存格的值是通過從其WorkSheet
中檢索所需的儲存格來完成的,如下所示:
# Load existing spreadsheet
workbook = WorkBook.Load("test.xlsx")
worksheet = workbook.DefaultWorkSheet
# Access cell B1 in the worksheet
cell = worksheet["B1"]
IronXL for Python 的 Cell
類別表示 Excel 試算表中的個別儲存格。 它包含屬性和方法,使用者可以直接訪問和修改單元格的值。
每個WorkSheet
物件管理一個Cell
物件索引,對應於 Excel 工作表中的每個儲存格值。 在上述源代码中,我们通过其行索引和列索引引用所需的单元格(在此情况下为单元格 B1),使用标准数组索引语法进行操作。
透過對單元格對象的引用,我們可以讀取和寫入試算表單元格的數據。
# 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)
讀取和寫入一系列的單元格值
Range
類別代表一個二維的 Cell
對象集合。 此集合指的是Excel單元格的實際範圍。 透過對 WorkSheet
物件使用字串索引子來獲得範圍。
參數文本可以是單個儲存格的座標(例如「A1」,如先前所示)或是從左到右、從上到下的多個儲存格範圍(例如「B2:E5」)。 也可以在WorkSheet
上呼叫GetRange
。
# Access range D2:D101 in the worksheet
range_ = workSheet["D2:D101"]
向試算表添加公式
使用 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}"
摘要
IronXL.Excel 是一個獨立的 Python 函式庫,用於讀取各種電子表格格式。 它不需要安裝Microsoft Excel,也不依賴於Interop。