python
主页 > 脚本 > python >

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

2025-02-11 | 佚名 | 点击:

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')

代码说明

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 应用程序。

原文链接:
相关文章
最新更新