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,使其可供導入。
[{我(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
物件管理一個索引,包含 Excel 工作表中每個單元格的 Cell
物件。 在上面的源代碼中,我們通過其行和列索引來引用所需的單元格。(在這個情況下, 單元格 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"]
向試算表添加公式
將 Cell
的公式設置在 Formula
屬性中。
下面的代碼遍歷每個州並在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 函式庫,用於讀取各種電子表格格式。 它不需要微軟 Excel安裝,並且不依賴於Interop。