Python 在数据处理领域应用广泛,其中与 Excel 文件的交互是常见需求之一。
本文将介绍四种使用 Python 给 Excel 文件写入数据的方法,并结合生活中的例子进行解释,帮助新手小白快速上手。
1. 使用 openpyxl 库
openpyxl 是一个用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库。它支持读取和修改 Excel 文件的单元格、样式、公式等内容。
假设你是一名老师,需要将学生的考试成绩写入 Excel 文件中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | from openpyxl import Workbook # 创建一个新的工作簿 wb = Workbook() # 获取默认的工作表 ws = wb.active # 写入数据 ws[ 'A1' ] = '姓名' ws[ 'B1' ] = '成绩' ws[ 'A2' ] = '张三' ws[ 'B2' ] = 90 ws[ 'A3' ] = '李四' ws[ 'B3' ] = 85 # 保存文件 wb.save( '学生成绩.xlsx' ) |
代码说明
-
Workbook() 创建一个新的工作簿对象。
-
wb.active 获取默认的工作表。
-
ws[‘A1’] = ‘姓名’ 将字符串 “姓名” 写入单元格 A1。
-
wb.save(‘学生成绩.xlsx’) 将工作簿保存为名为 “学生成绩.xlsx” 的文件
2. 使用 xlsxwriter 库
xlsxwriter 是一个用于创建 Excel xlsx 文件的 Python 库,它支持格式化单元格、插入图表、图片等功能。
假设你是一名销售人员,需要将每个月的销售数据写入 Excel 文件中,并生成图表。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | import xlsxwriter # 创建一个新的工作簿 workbook = xlsxwriter.Workbook( '销售数据.xlsx' ) # 添加一个工作表 worksheet = workbook.add_worksheet() # 写入数据 data = [ [ '月份' , '销售额' ], [ '一月' , 100 ], [ '二月' , 120 ], [ '三月' , 150 ], ] row = 0 col = 0 for item in data: worksheet.write_row(row, col, item) row + = 1 # 创建图表 chart = workbook.add_chart({ 'type' : 'column' }) chart.add_series({ 'name' : '销售额' , 'categories' : '=Sheet1!$A$2:$A$4' , 'values' : '=Sheet1!$B$2:$B$4' , }) worksheet.insert_chart( 'D2' , chart) # 关闭工作簿 workbook.close() |
代码说明
xlsxwriter.Workbook(‘销售数据.xlsx’) 创建一个新的工作簿对象。
workbook.add_worksheet() 添加一个新的工作表。
worksheet.write_row(row, col, item) 将一行数据写入工作表。
workbook.add_chart() 创建一个图表对象。
chart.add_series() 添加图表数据系列。
worksheet.insert_chart(‘D2’, chart) 将图表插入到工作表中。
workbook.close() 关闭工作簿并保存文件。
3. 使用 pandas 库
pandas 是一个强大的数据分析库,它可以方便地读取和写入各种格式的数据,包括 Excel 文件。
假设你是一名数据分析师,需要从数据库中读取数据,并将其写入 Excel 文件中。
1 2 3 4 5 6 7 8 9 10 11 12 | import pandas as pd # 创建一个 DataFrame data = { '姓名' : [ '张三' , '李四' , '王五' ], '年龄' : [ 20 , 25 , 30 ], '城市' : [ '北京' , '上海' , '广州' ], } df = pd.DataFrame(data) # 将 DataFrame 写入 Excel 文件 df.to_excel( '用户信息.xlsx' , sheet_name = 'Sheet1' , index = False ) |
代码说明
pd.DataFrame(data) 创建一个 DataFrame 对象。
df.to_excel(‘用户信息.xlsx’, sheet_name=’Sheet1′, index=False) 将 DataFrame 写入名为 “用户信息.xlsx” 的 Excel 文件,指定工作表名称为 “Sheet1″,不写入行索引。
4. 使用 win32com 库 (Windows Only)
win32com 是一个用于访问 Windows COM 对象的 Python 库,它可以用来操作 Excel 应用程序。
假设你已经有了一个 Excel 文件,需要在其中添加一些数据,可以使用 win32com 来打开 Excel 应用程序并进行操作。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import win32com.client # 打开 Excel 应用程序 excel = win32com.client.Dispatch( "Excel.Application" ) # 打开工作簿 workbook = excel.Workbooks. Open ( "已有文件.xlsx" ) # 获取工作表 worksheet = workbook.Sheets( "Sheet1" ) # 写入数据 worksheet.Cells( 1 , 1 ).Value = "新的数据" # 保存文件 workbook.Save() # 关闭 Excel 应用程序 excel.Quit() |
代码说明
win32com.client.Dispatch(“Excel.Application”) 打开 Excel 应用程序。
excel.Workbooks.Open(“已有文件.xlsx”) 打开名为 “已有文件.xlsx” 的工作簿。
workbook.Sheets(“Sheet1”) 获取名为 “Sheet1” 的工作表。
worksheet.Cells(1, 1).Value = “新的数据” 将字符串 “新的数据” 写入单元格 A1。
workbook.Save() 保存工作簿。
excel.Quit() 关闭 Excel 应用程序。
到此这篇关于Python给Excel写入数据的四种方法小结的文章就介绍到这了,更多相关Python Excel写入数据内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!