目錄:
- 使用 Pandas 轉 Excel
- 使用 Openpyxl 轉 Excel
- 使用 xlsxwriter 轉 Excel
- 使用 csv 轉 Excel
Python 中的字典是一個數據集合,其中每個值對應一個鍵。它們是無序的、可變的,并且對字典中存儲的值和鍵的數據類型沒有限制。Python 程序員經常需要在不同格式之間傳輸數據,將字典導出到 Excel 是一項常見的任務。
使用 Pandas 轉 Excel
Pandas 提供了一個簡單的 to_excel() 方法可以將 DataFrame 轉換為 Excel 文件。
通過先將字典轉換為 DataFrame,然后可以使用 to_excel() 方法有效地將數據導出到 Excel 文件。
import pandas as pd
dct = {'Name': ['Li', 'Wang', 'Zhang'],'Age': [17, 16, 18],'Origin': ['BeiJing', 'TianJin', 'ShangHai']}# 字典轉 DataFrame
df = pd.DataFrame(dct)# DataFrame 寫入 Excel
df.to_excel('output.xlsx', index=False)
以上示例,將字典轉換為 pandas DataFrame,其中鍵成為列標題,值成為數據行。to_excel() 方法將 DataFrame 導出到 Excel 文件,其中 index=False 確保 DataFrame 的索引不會作為額外的列包含在 Excel 文件中。
使用 Openpyxl 轉 Excel
使用 Openpyxl 設置 Excel 工作簿,然后將字典鍵作為標題行,表達式 zip(*data_dict.values()) 提取字典中的值作為數據行。
from openpyxl import Workbook
dct = {'Name': ['Li', 'Wang', 'Zhang'],'Age': [17, 16, 18],'Origin': ['BeiJing', 'TianJin', 'ShangHai']}wb = Workbook()
ws = wb.active# 將字典的鍵作為標題行
ws.append(list(dct.keys()))# 將字典的值作為數據行添加
for row in zip(*dct.values()):ws.append(row)wb.save('output.xlsx')
使用 xlsxwriter 轉 Excel
XlsxWriter 是一個用于處理 Excel 文件的 Python 模塊。可以靈活的創建 Excel 文件、添加工作表,添加數據。
import xlsxwriter
dct = {'Name': ['Li', 'Wang', 'Zhang'],'Age': [17, 16, 18],'Origin': ['BeiJing', 'TianJin', 'ShangHai']}# 創建 Excel 文件,并添加一個工作表
workbook = xlsxwriter.Workbook('output.xlsx')
worksheet = workbook.add_worksheet()# 起始位置
row, col = 0, 0# 寫入鍵值
for key in dct.keys():worksheet.write(row, col, key)col += 1for i, key in enumerate(dct.keys()):for j, item in enumerate(dct[key]):worksheet.write(j+1, i, item)workbook.close()
使用 csv 轉 Excel
csv 模塊實現用于以 CSV 格式讀取和寫入表格數據。 CSV 文件可以用 Excel 打開、處理。
import csv
dct = {'Name': ['Li', 'Wang', 'Zhang'],'Age': [17, 16, 18],'Origin': ['BeiJing', 'TianJin', 'ShangHai']}with open('output.csv', 'w', newline='') as csvfile:writer = csv.DictWriter(csvfile, fieldnames=dct.keys(), dialect='excel')writer.writeheader()writer.writerows([{'Name': name, 'Age': age, 'Origin': origin} for name, age, origin in zip(dct['Name'], dct['Age'], dct['Origin'])])
將字典導出到 Excel 對于 Python 數據分析人員來說是一項常用的技能。借助 openpyxl 和 pandas 等庫,可以輕松地將詞典轉換為 Excel 文件,有效地呈現和分析數據。