Python 给 Excel 写入数据的四种方法

一、使用 openpyxl 库

openpyxl 是一个专门用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库,尤其适合需要修改现有 Excel 文件时使用。

复制代码
#python复制代码
from openpyxl import Workbook
# 创建一个新的工作簿
wb = Workbook()
# 获取默认的工作表
ws = wb.active
# 写入数据
ws['A1'] = '姓名'
ws['B1'] = '成绩'
ws['A2'] = '小明'
ws['B2'] = 88
ws['A3'] = '小红'
ws['B3'] = 92
# 保存文件
wb.save('学生成绩.xlsx')
代码说明Workbook() 创建一个新的工作簿对象。wb.active 获取当前活动的工作表。ws['A1'] = '姓名' 将 "姓名" 写入 A1 单元格。wb.save('学生成绩.xlsx') 将工作簿保存为指定的文件名。

二、使用 xlsxwriter 库

xlsxwriter 是一个功能强大的库,能够创建 Excel xlsx 文件并支持丰富的格式化功能,单行进行写入。

复制代码
python复制代码
import xlsxwriter

# 创建新的工作簿
workbook = xlsxwriter.Workbook('销售数据.xlsx')

# 添加一个工作表
worksheet = workbook.add_worksheet()

# 写入数据
data = [
    ['月份', '销售额'],
    ['一月', 150],
    ['二月', 200],
    ['三月', 300],
]

row = 0
for item in data:
    worksheet.write_row(row, 0, 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') 创建新的工作簿。worksheet.write_row(row, 0, item) 将数据行写入工作表。workbook.add_chart() 创建一个图表对象,并设置数据系列。

三、使用 pandas 库

pandas 是一个极为流行的数据分析工具,它使得处理 Excel 文件变得简单而高效。

复制代码
python复制代码import pandas as pd

# 创建一个 DataFrame
data = {
    '姓名': ['小明', '小红', '小刚'],
    '年龄': [22, 23, 21],
    '城市': ['北京', '上海', '广州'],
}
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) 将数据写入 Excel 文件,指定工作表名称。

四、使用 win32com 库 (Windows Only)

win32com 库允许你直接控制 Excel 应用程序。如果你需要在已有的 Excel 文件中添加数据,这个库会很有用。

python复制代码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 应用。workbook.Save() 保存对工作簿的更改。

相关推荐
京东云开发者几秒前
【全栈实践】第一个 AI Agent 项目:从零搭建 AI 音频创作助手【最终版】
前端·vue.js·音视频开发
12.=0.13 分钟前
【REVIEW_C】【持续更新】
服务器·前端·javascript
Vuji13 分钟前
Pi 插件解剖|todo.ts:297 行,拼出工具+命令+状态的完整插件
前端·agent
IT学长编程15 分钟前
计算机毕业设计 基于用户评论主题挖掘的旅游景点推荐系统 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·python·django·毕业设计·数据可视化分析·旅游景点推荐系统·基于用户评论主题挖掘
明月_清风17 分钟前
开发者写PPT自救指南:4类对接场景,把技术讲清楚
前端·后端·面试
探索前端18 分钟前
3dtiles加载时被地形遮挡问题研究及处理思路
前端·3d·cesium
内蒙深海大鲨鱼19 分钟前
5.Introduction to PyTorch YouTube Series--visualable train
人工智能·pytorch·python
Htr_25 分钟前
Vercel 使用指南:框架、工作流与基础设施一体化的现代 Web 部署平台
前端
weixin_4713830335 分钟前
17 Self-RAG —— 幻觉检测 + 答案质量评估
python·agent
一颗烂土豆38 分钟前
ECharts 太平面?试试这款 Vue 3D 图表库
前端·vue.js·echarts