如何在 Python 中讀取 Excel 文件
在資料分析和自動化任務中,處理Excel文件是一項常見的要求。 Python,透過其廣泛的程式庫,提供了多種方式與XLSX檔案互動。 在本教學中,我們將學習如何使用IronXL這個Python Excel程式庫來讀取Excel文件。
IronXL:Python Excel 程式庫
IronXL for Python旨在協助開發者輕鬆地在Python中讀寫Excel檔案。 您不僅可以撰寫Excel文件,還可以在一次操作中處理多個工作表。 這個程式庫非常適合在不安裝Microsoft Excel的情況下撰寫Excel文件。
當您需要將資料直接匯入到Excel試算表時,IronXL是您的絕佳工具。 IronXL讓處理Excel試算表變得簡單。 它有助於輕鬆管理XLSX文件中的多個資料表。
讓我們看看如何使用IronXL 在Python中讀取Excel文件。
如何在Python中讀取Excel文件
以下步驟涵蓋在Python中讀取Excel文件所涉及的過程。
- 在Visual Studio Code中建立一個Python檔案。
- 使用pip安裝Python Excel程式庫。
- 載入我們需要讀取的Excel文件。
- 使用迴圈來遍歷Excel資料。
- 在控制台上顯示已遍歷的資料。
先決條件
在深入本教學之前,請確保您的系統上已安裝以下的前置要求:
- .NET 6.0 SDK: IronXL是基於.NET構建的,系統中需要安裝.NET 6.0 SDK。
- Python 3.0+: 本教學假設您已經安裝了Python 3.0或更高版本。
- pip: 確保已安裝pip,這是Python的套件安裝管理工具,將用於安裝IronXL。
設置您的環境
1. 在Visual Studio Code中建立檔案
打開Visual Studio Code,並建立一個名為ReadExcel.py的新Python檔案。 此檔案將包含我們使用IronXL來讀取Excel文件的腳本。

2. 安裝IronXL
透過選擇選單中的Terminal > New Terminal來打開Visual Studio Code中的命令列。

運行以下命令以安裝IronXL:
pip install ironxlpip install ironxl
撰寫程式碼
現在,我們將把程式碼分解為多個部分並說明每個部分。
匯入程式庫
from ironxl import *
import sysfrom ironxl import *
import sys這裡,我們匯入了來自IronXL程式庫的所有內容,該程式庫提供了處理Excel檔案的功能。 sys用來設定Python安裝路徑,這對IronXL的正確運行是必要的。
設置Python安裝路徑
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'sys.prefix被分配為您的Python安裝目錄路徑。 此準備步驟可能在每個環境中都不必要,但在某些配置中是必不可少的,能防止路徑相關問題。
設置授權金鑰
License.LicenseKey = "License-Key"License.LicenseKey = "License-Key"IronXL程式庫需要有效的授權金鑰以解鎖其所有功能。 這行程式碼License.LicenseKey = "License-Key"就是您輸入所獲得的授權金鑰的地方。 如果沒有有效的授權,IronXL將無法工作。
載入工作簿
workbook = WorkBook.Load("data.xlsx")workbook = WorkBook.Load("data.xlsx")腳本的這部分,workbook = WorkBook.Load("data.xlsx"),說明了如何載入Excel工作簿。 WorkBook.Load是IronXL提供的用於開啟現有Excel檔案的函式,指定其檔案路徑。
範例使用"data.xlsx",假設該檔案位於與腳本相同的目錄中。 如果您的檔案在其他位置,您需要提供完整的檔案路徑。
選擇工作表
worksheet = workbook.WorkSheets[0]worksheet = workbook.WorkSheets[0]載入工作簿之後,下一步是選擇一個工作表。 workbook.WorkSheets[0]這行存取了Excel檔案中的第一個工作表。工作表是從索引0開始,因此這段程式碼有效地選擇了第一張工作表。
讀取及顯示資料
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))腳本的這部分示範了如何讀取及顯示特定儲存格中的資料。 透過遍歷儲存格範圍worksheet['A2:A5'],我們可以存取每個儲存格的位址及文字值。 您可以從工作表的預定義區域中檢索資訊。
進行計算
IronXL提供了直接在Excel表內的資料範圍上進行簡單計算的功能。 程式碼的以下部分示範了如何在指定範圍的資料上進行簡單計算,如總和、最小值和最大值。
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)尋找唯一值
腳本的這部分示範了如何識別Excel表中的指定範圍內的唯一值:
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)為了達成這個目標,一個集合理解式被用來。 Python中的集合是自動消除重複項的集合,使它們成為尋找唯一值的理想選擇。 理解式遍歷了範圍F2:F10內的每個儲存格,使用cell.Text存取每個儲存格的文字內容。
將這次迭代置於一個集合中,確保僅保留唯一值。
計算特定值的出現次數
最後,這段程式碼段計算了一個特定值在給定範圍中的出現次數。
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)這裡的目標是量化一個特定值的出現次數,這裡標記為specific_value。 程式碼運用了一個生成器表達式,遍歷範圍G2:G10中的每個儲存格,將儲存格的文字內容與specific_value作比較。
表達式cell.Text == specific_value對於包含目標值的每個儲存格評估為True,否則為False。sum函式將這些布林值加總,將True看作1,False為0,從而有效地計算了特定值的出現次數。
完整程式碼範例
以下是完整的程式碼以便更好地理解程式碼:
from ironxl import *
import sys
# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
# Setting the license key for IronXL
License.LicenseKey = "License-Key"
# Load the workbook
workbook = WorkBook.Load("data.xlsx")
# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
# Count occurrences of a specific value in a different range
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)from ironxl import *
import sys
# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
# Setting the license key for IronXL
License.LicenseKey = "License-Key"
# Load the workbook
workbook = WorkBook.Load("data.xlsx")
# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
# Count occurrences of a specific value in a different range
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)輸出
運行ReadExcel.py Python檔案後,您將在控制台中看到以下輸出,這反映了腳本對Excel資料執行的操作的結果。

結論
在本教學中,我們探討了如何設置Python環境以使用IronXL來讀取Excel檔案。 我們介紹了安裝必要的軟體、撰寫載入Excel工作簿的腳本、選擇工作表、讀取資料、執行基本資料分析操作等等。
IronXL提供了一個強大的API用於在Python中處理Excel文件,使得資料分析、資料清理和可視化任務不再需要Microsoft Excel。
無論您是在分析銷售資料、為報告匯入資料或是從Excel資料建立可視化,IronXL都提供了一個強大的解決方案來管理Python應用中的Excel文件。
IronXL提供免費試用供使用者探索其特性,許可證起價為$999,適合準備完全整合其功能的人。
常見問題
如何在Python中不使用Microsoft Excel讀取Excel文件?
IronXL允許您在Python中讀取Excel文件,而無需在系統上安裝Microsoft Excel。您可以使用WorkBook.Load("data.xlsx")載入工作簿並直接存取工作表和單元格資料。
使用IronXL讀取Python中的Excel文件需要什麼設置?
使用IronXL,請確保您已安裝.NET 6.0 SDK、Python 3.0或更高版本,以及pip。在Visual Studio Code中設置您的編碼環境以開始處理Excel文件。
如何在Python中安裝IronXL?
在終端中運行命令pip install ironxl來安裝IronXL。這會安裝程式庫,使您能夠讀取和操作Excel文件。
我可以使用IronXL對Excel文件進行資料分析操作嗎?
是的,IronXL支持各種資料分析操作,例如計算總和、查找最小值和最大值,以及識別Excel表單中的唯一值。
如何使用IronXL在Excel範圍內查找唯一值?
要查找唯一值,可以使用集合理解來迭代單元格範圍並提取不同的文字值。此方法能有效識別所有唯一條目。
使用IronXL能否在Excel中計數特定值?
是的,您可以通過使用生成器表達式迭代單元格範圍並對符合目標值的單元格文字的實例求和來計算特定值的出現次數。
在Python中使用IronXL進行Excel操作有什麼好處?
IronXL提供了一個功能強大的API,用於操作Excel文件而無需Microsoft Excel。它非常適合於資料分析、清理和可視化等任務,提高Python專案的生產力。
如何編寫Python腳本以使用IronXL讀取Excel文件?
建立一個名為ReadExcel.py的Python腳本,導入必要的程式庫,設置您的Python路徑,並使用IronXL的方法載入和互動處理Excel工作簿和資料。
可以在Excel資料上使用IronXL執行哪些操作?
IronXL允許各種操作,例如讀取單元格值、選擇工作表、計算總和、查找最小值/最大值,以及在Excel資料範圍內計算特定出現次數。









