Python 在数据处理领域应用广泛,其中与 Excel 文件的交互是常见需求之一。
本文将介绍四种使用 Python 给 Excel 文件写入数据的方法,并结合生活中的例子进行解释,帮助新手小白快速上手。
1. 使用 openpyxl 库
openpyxl 是一个用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库。它支持读取和修改 Excel 文件的单元格、样式、公式等内容。
假设你是一名老师,需要将学生的考试成绩写入 Excel 文件中。
from openpyxl import Workbook# 创建一个新的工作簿wb = Workbook()# 获取默认的工作表ws = wb.active# 写入数据ws['A1'] = '姓名'ws['B1'] = '成绩'ws['A2'] = '张三'ws['B2'] = 90ws['A3'] = '李四'ws['B3'] = 85# 保存文件wb.save('学生成绩.xlsx')
代码说明
Workbook() 创建一个新的工作簿对象。
wb.active 获取默认的工作表。
ws['A1'] = '姓名' 将字符串 "姓名" 写入单元格 A1。
wb.save('学生成绩.xlsx') 将工作簿保存为名为 "学生成绩.xlsx" 的文件。
2. 使用 xlsxwriter 库
xlsxwriter 是一个用于创建 Excel xlsx 文件的 Python 库,它支持格式化单元格、插入图表、图片等功能。
假设你是一名销售人员,需要将每个月的销售数据写入 Excel 文件中,并生成图表。
import xlsxwriter# 创建一个新的工作簿workbook = xlsxwriter.Workbook('销售数据.xlsx')# 添加一个工作表worksheet = workbook.add_worksheet()# 写入数据data = [ ['月份', '销售额'], ['一月', 100], ['二月', 120], ['三月', 150],]row = 0col = 0for 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 文件中。
import pandas as pd# 创建一个 DataFramedata = { '姓名': ['张三', '李四', '王五'], '年龄': [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 应用程序并进行操作。
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 数据!
全套Python学习资料分享:
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
三、python入门资料大全
四、python进阶资料大全
五、python爬虫专栏
六、入门学习视频全套
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
七、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
八、python最新面试题