从入门到精通:Python OpenPyXL完整教程

更多学习内容:ipengtao.com

OpenPyXL是一个强大的Python库,用于处理Excel文件,允许读取、编辑和创建Excel工作簿和工作表。无论是需要自动化处理大量数据,还是创建漂亮的报告,OpenPyXL都是一个强大的工具。本文将详细介绍OpenPyXL的各种功能,包括读取、写入、样式设置等,以及大量示例代码来帮助你深入理解。

安装OpenPyXL

要开始使用OpenPyXL,首先需要安装它。

使用pip进行安装:

bash 复制代码
pip install openpyxl

安装完成后,就可以导入OpenPyXL并开始处理Excel文件了。

python 复制代码
import openpyxl

打开和创建工作簿

打开现有工作簿

使用OpenPyXL,可以打开现有的Excel工作簿,然后对其进行读取和编辑。

下面是打开工作簿的示例:

python 复制代码
import openpyxl

# 打开工作簿
workbook = openpyxl.load_workbook('example.xlsx')

# 获取工作表
sheet = workbook['Sheet1']

# 读取单元格数据
cell_value = sheet['A1'].value
print(cell_value)

创建新工作簿

可以使用OpenPyXL创建新的Excel工作簿,然后将数据写入其中。

下面是创建新工作簿的示例:

python 复制代码
import openpyxl

# 创建新工作簿
workbook = openpyxl.Workbook()

# 获取默认工作表
sheet = workbook.active

# 写入数据到单元格
sheet['A1'] = 'Hello'
sheet['B1'] = 'World'

# 保存工作簿
workbook.save('new_example.xlsx')

读取和写入数据

读取单元格数据

可以使用OpenPyXL读取工作表中的单元格数据。

以下是一些示例:

python 复制代码
import openpyxl

workbook = openpyxl.load_workbook('example.xlsx')
sheet = workbook['Sheet1']

# 读取单元格数据
cell_value = sheet['A1'].value
print(cell_value)

# 通过行和列索引读取数据
cell_value = sheet.cell(row=2, column=3).value
print(cell_value)

写入数据到单元格

要将数据写入工作表,可以简单地为单元格分配一个值。

以下是示例:

python 复制代码
import openpyxl

workbook = openpyxl.Workbook()
sheet = workbook.active

# 写入数据到单元格
sheet['A1'] = 'Hello'
sheet.cell(row=2, column=2, value='World')

# 保存工作簿
workbook.save('new_example.xlsx')

操作工作表

OpenPyXL还可以操作工作表,包括创建、复制、删除等。

以下是一些示例:

创建新工作表

可以创建新的工作表,并将其添加到工作簿中:

python 复制代码
import openpyxl

workbook = openpyxl.Workbook()

# 创建新的工作表
new_sheet = workbook.create_sheet(title='NewSheet')

# 保存工作簿
workbook.save('new_example.xlsx')

复制工作表

要复制现有的工作表,可以使用copy_worksheet方法:

python 复制代码
import openpyxl

workbook = openpyxl.load_workbook('example.xlsx')

# 复制工作表
copied_sheet = workbook.copy_worksheet(workbook['Sheet1'])
copied_sheet.title = 'Copy of Sheet1'

# 保存工作簿
workbook.save('example_with_copy.xlsx')

删除工作表

要删除工作表,使用remove方法:

python 复制代码
import openpyxl

workbook = openpyxl.load_workbook('example.xlsx')

# 删除工作表
del workbook['Sheet2']

# 保存工作簿
workbook.save('example_without_sheet2.xlsx')

设置样式

OpenPyXL还支持样式设置,可以设置字体、背景颜色、边框等。以下是一些示例:

设置字体样式

python 复制代码
import openpyxl
from openpyxl.styles import Font

workbook = openpyxl.Workbook()
sheet = workbook.active

# 创建字体样式
font = Font(name='Arial', bold=True, size=14)

# 将字体样式应用到单元格
sheet['A1'].font = font

# 保存工作簿
workbook.save('example_with_font.xlsx')

设置背景颜色

python 复制代码
import openpyxl
from openpyxl.styles import PatternFill

workbook = openpyxl.Workbook

()
sheet = workbook.active

# 创建背景颜色样式
fill = PatternFill(start_color='FFFF00', end_color='FFFF00', fill_type='solid')

# 将背景颜色应用到单元格
sheet['B2'].fill = fill

# 保存工作簿
workbook.save('example_with_fill.xlsx')

设置边框

python 复制代码
import openpyxl
from openpyxl.styles import Border, Side

workbook = openpyxl.Workbook()
sheet = workbook.active

# 创建边框样式
border = Border(left=Side(style='thin'), right=Side(style='thin'), top=Side(style='thin'), bottom=Side(style='thin'))

# 将边框应用到单元格
sheet['C3'].border = border

# 保存工作簿
workbook.save('example_with_border.xlsx')

总结

Python OpenPyXL是一个功能强大的库,用于处理Excel文件,无论是在办公自动化中使用Excel文件,还是需要对大量数据进行分析,OpenPyXL都是一个强有力的工具。在本文中,介绍了OpenPyXL的安装方法,然后分享了如何打开、创建工作簿,读取和写入数据,以及如何操作工作表和设置样式。

通过本文,学会了如何使用OpenPyXL打开已有的Excel文件,读取和编辑其中的数据,也学会了如何创建新的工作簿,将数据写入其中,以及如何操作工作表,包括创建、复制和删除工作表。此外,还了解了如何设置样式,包括字体、背景颜色和边框,以美化Excel文件。

使用Python OpenPyXL,可以轻松地处理各种Excel文件,从而提高办公效率和数据处理能力。无论是日常工作还是数据分析,OpenPyXL都将成为得力助手。


Python学习路线

更多学习内容:ipengtao.com

相关推荐
leobertlan5 小时前
2025年终总结
前端·后端·程序员
面向Google编程5 小时前
从零学习Kafka:数据存储
后端·kafka
冷雨夜中漫步5 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
郝学胜-神的一滴6 小时前
深入解析Python字典的继承关系:从abc模块看设计之美
网络·数据结构·python·程序人生
百锦再6 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
易安说AI6 小时前
Claude Opus 4.6 凌晨发布,我体验了一整晚,说说真实感受。
后端
易安说AI6 小时前
Ralph Loop 让Claude无止尽干活的牛马...
前端·后端
易安说AI6 小时前
用 Claude Code 远程分析生产日志,追踪 Claude Max 账户被封原因
后端
颜酱7 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
喵手7 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控