許多開發人員都遇到需要將資料從程式匯出到 Excel 電子表格的情況。本指南將探索 Python 中用於完成此任務的不同方法和套件。
選擇方法時,請考慮項目的特定要求。需要記住的因素包括目標電腦上 Office 的可用性以及資料的長度和結構。
Openpyxl 是一個流行的 Python 軟體包,用於讀取和寫入 Excel 電子表格。它提供了對單元格格式和樣式的靈活性和深入控制。但是,請記住,Openpyxl 要求在目標系統上安裝 Office,這可能並不總是可行。
對於未安裝 Office 或未安裝 Office 的情況資料很複雜,Pandas 成為一個很好的選擇。 Pandas 允許您以通用資料結構操作和表示資料。透過將資料轉換為 DataFrame 並利用 to_excel 方法,您可以輕鬆地將其儲存到 Excel 檔案中。
考慮一個場景,其中您有兩個值清單和三個值清單字串變數。您需要建立一個具有特定版面的Excel 文件,如下圖所示:
使用Openpyxl,您可以如下建立此版面:
import openpyxl data = { "Display": [1, 2, 3], "Dominance": [2.34, 4.346, 4.234], "Test": [2.3, 3.2, 1.7] } workbook = openpyxl.Workbook() sheet = workbook.active # Set column widths sheet.column_dimensions["A"].width = 10 sheet.column_dimensions["B"].width = 15 # Insert headings sheet["A1"] = "Category" sheet["B1"] = "Values" # Iterate over keys and values for key, values in data.items(): sheet[f"A{sheet.max_row + 1}"] = key for i, value in enumerate(values, 2): sheet[f"B{sheet.max_row + i}"] = value workbook.save("output.xlsx")
或者,使用Pandas:
import pandas as pd data = { "display": [1, 2, 3], "dominance": [2.34, 4.346, 4.234], "test": [2.3, 3.2, 1.7] } df = pd.DataFrame(data) df.to_excel("output.xlsx", index=False)
要將特定單元格格式化為科學或精確數字,您可以利用Pandas 中的樣式方法:
df['dominance'] = df['dominance'].apply(lambda x: "%.10f" % x) df.to_excel("output.xlsx", index=False)
這將在將值格式化為科學的同時保留值的完整精度符號。
以上是如何使用 Python 將資料寫入 Excel 電子表格:Openpyxl 與 Pandas?的詳細內容。更多資訊請關注PHP中文網其他相關文章!