ITPub博客

首页 > 数据库 > 数据库开发技术 > openpyxl使用介绍

openpyxl使用介绍

原创 数据库开发技术 作者:derekwh 时间:2023-04-12 11:03:19 0 删除 编辑

       

openpyxl是一个用于读写Excel文件的Python库,它提供了许多方便的方法来处理Excel文件。本文将对openpyxl的使用做一个基本的介绍。

安装

要使用openpyxl,需要先安装它。可以使用pip命令来安装openpyxl,打开终端或命令行窗口,输入以下命令即可安装:
pip install openpyxl

创建文件

使用openpyxl创建Excel文件非常简单。可使用Workbook对象创建一个新的Excel文件,如下所示:
from openpyxl import Workbook

# 创建Workbook对象
wb = Workbook()

# 保存Excel文件
wb.save('example.xlsx')

打开和读取

要打开和读取Excel文件,可以使用load_workbook()函数。该函数接受Excel文件的文件名作为参数,并返回一个Workbook对象,如下所示:
from openpyxl import load_workbook

# 打开Excel文件
wb = load_workbook('example.xlsx')

# 获取第一个工作表
sheet = wb.active

# 获取单元格的值
value = sheet['A1'].value
print(value)

修改文件

要修改Excel文件,可以使用Workbook对象的各种方法。例如,可以使用append()方法向工作表添加行,如下所示:
from openpyxl import Workbook

# 创建Workbook对象
wb = Workbook()

# 获取第一个工作表
sheet = wb.active

# 向工作表添加行
sheet.append(['Name', 'Age', 'City'])
sheet.append(['Tom', 18, 'New York'])
sheet.append(['Jack', 21, 'London'])

# 保存Excel文件
wb.save('example.xlsx')

更改格式

openpyxl允许更改单元格的格式,例如,可以更改单元格的字体、颜色、对齐方式等。下面是一个示例,演示如何更改单元格的字体和颜色:
from openpyxl import Workbook
from openpyxl.styles import Font

# 创建Workbook对象
wb = Workbook()

# 获取第一个工作表
sheet = wb.active

# 设置字体和颜色
font = Font(color="000000")#黑色
sheet['A1'].font = font
sheet['A1'].value=  'Hello'
# 保存Excel文件
wb.save('example.xlsx')

复杂操作

openpyxl提供了许多方法处理Excel文件,例如,使用merge_cells()方法合并单元格,使用split()方法拆分单元格,使用freeze_panes()方法冻结窗格等。下面是一个示例,演示如何使用openpyxl实现复杂的Excel操作:

合并单元格

使用merge_cells()方法可以将多个单元格合并为一个单元格。例如,要将A1:E1合并为一个单元格,可以执行以下操作:
sheet.merge_cells('A1:E1')

拆分单元格

使用unmerge_cells()方法可以将合并的单元格拆分为多个单元格。例如,要将A1:E1拆分为多个单元格,可以执行以下操作:
sheet.unmerge_cells('A1:E1')

冻结窗格

使用freeze_panes属性可以冻结窗格。例如,要冻结B2单元格及其左侧和上方的单元格,可以执行以下操作:
sheet.freeze_panes = 'B2'

对齐单元格文本

使用Alignment类可以对齐单元格文本。例如,要将第4行的所有单元格的文本水平居中对齐,可以执行以下操作:
from openpyxl.styles import Alignment

for col in range(1, 6):
    cell = sheet.cell(row=4, column=col)
    cell.alignment = Alignment(horizontal='center')

图表

openpyxl库支持创建和编辑Excel图表。可以使用openpyxl.chart模块中的类来创建各种类型的图表,例如条形图、折线图、散点图等。下面是一个示例,演示如何使用openpyxl创建条形图:
from openpyxl import Workbook
from openpyxl.chart import BarChart, Reference

# 创建Workbook对象
wb = Workbook()

# 获取第一个工作表
ws = wb.active

# 向工作表添加数据
rows = [
    ['Country', '2015', '2016', '2017'],
    ['USA', 12, 15, 18],
    ['China', 8, 12, 16],
    ['Japan', 6, 8, 10],
]
for row in rows:
    ws.append(row)

# 创建条形图
chart = BarChart()
chart.title = 'Sales by Country'
chart.x_axis.title = 'Year'
chart.y_axis.title = 'Sales'

# 设置数据范围
data = Reference(ws, min_row=1, max_row=4, min_col=2, max_col=4)

# 将数据添加到图表中
chart.add_data(data)

# 将图表添加到工作表中
ws.add_chart(chart, 'A6')

# 保存Excel文件
wb.save('example.xlsx')
openpyxl还支持许多其他类型的图表,例如折线图、散点图、饼图等。要创建这些图表,可以使用openpyxl.chart模块中的不同类和方法。

总结

通过使用openpyxl库,可轻松操作Excel,更多信息可访问官方文档。

原文作者:Python学习杂记;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论
央企算法工程师,微信公众号: python数智工坊

注册时间:2021-03-14

  • 博文量
    305
  • 访问量
    162352