首页 > Python资料 博客日记
Python 在Excel中插入、替换、提取、或删除图片
2024-10-21 17:00:03Python资料围观76次
本篇文章分享Python 在Excel中插入、替换、提取、或删除图片,对你有帮助的话记得收藏一下,看Python资料网收获更多编程知识
Excel是主要用于处理表格和数据的工具,我们也能在其中插入、编辑或管理图片,为工作表增添视觉效果,提升报告的吸引力。本文将详细介绍如何使用Python操作Excel中的图片,包含以下4个基础示例:
- Python 在Excel中插入图片
- Python 替换Excel中的图片
- Python 提取Excel中的图片
- Python 删除Excel中的图片
首先需要安装第三方Python库- Spire.XLS for Python。可以下载产品后再从本地路径安装使用,也可以直接使用以下pip命令安装:
pip install Spire.XLS
Python 在Excel中插入图片
我们可以使用Spire.XLS for Python库在指定单元格中插入图片,并设置图片大小等。操作如下:
- 创建工作簿Workbook对象并获取指定工作表;
- 使用Worksheet.Pictures.Add(int topRow, int leftColumn, Image image)方法在工作表指定单元格中插入图片;
- 通过ExcelPicture类下的各属性设置图片的宽度、高度、与单元格边框的距离等;
- 使用SaveToFile()方法保存Excel文件。
示例代码:
from spire.xls import * from spire.xls.common import * # 创建Workbook对象 workbook = Workbook() # 获取第一张工作表 sheet = workbook.Worksheets[0] # 在指定单元格中插入图片(此处为第一行第二列,即B1单元格) picture = sheet.Pictures.Add(1, 2, "示例.png") # 设置图片宽高度 picture.Width = 120 picture.Height = 120 # 调整图片所在位置的列宽和行高 sheet.Columns[1].ColumnWidth = 20 sheet.Rows[0].RowHeight = 110 # 设置单元格边框与图片之间的距离 picture.LeftColumnOffset = 90 picture.TopRowOffset = 20 # 保存文件 workbook.SaveToFile("插入图片.xlsx", ExcelVersion.Version2016) workbook.Dispose()
Python 替换Excel中的图片
要用新图片替换Excel中的原有图片,可以参考如下步骤:
- 加载Excel文件,并获取指定工作表;
- 通过Worksheet.Pictures[]属性获取指定图片;
- 加载新图,并通过ExcelPicture.Picture属性将指定图片替换为新图;
- 使用SaveToFile()方法保存Excel文件。
示例代码:
from spire.xls import * from spire.xls.common import * # 加载Excel文档 workbook = Workbook() workbook.LoadFromFile ("插入图片.xlsx") # 获取第一张工作表 sheet = workbook.Worksheets[0] # 获取工作表中第一张图片 excelPicture = sheet.Pictures[0] # 替换图片 excelPicture.Picture = Image.FromFile("pic.jpg") # 保存文档 workbook.SaveToFile("替换图片.xlsx", ExcelVersion.Version2016) workbook.Dispose()
Python 提取Excel中的图片
Spire.XLS for Python库也可以读取Excel文档中的图片,并保存到指定的文件路径。步骤如下:
- 加载Excel文件,并获取指定工作表;
- 遍历工作表中的所有图片;
- 调用ExcelPicture.Picture.Save()方法提取Excel中的图片。
示例代码:
from spire.xls import * from spire.xls.common import * # 加载Excel文档 workbook = Workbook() workbook.LoadFromFile("图标.xlsx") # 获取第一张工作表 sheet = workbook.Worksheets[0] # 获取工作表中所有图片 for i in range(sheet.Pictures.Count - 1, -1, -1): pic = sheet.Pictures[i] # 保存图片 pic.Picture.Save("提取图片\\图片-{0:d}.png".format(i), ImageFormat.get_Png()) workbook.Dispose()
Python 删除Excel中的图片
Worksheet.Pictures[imgIndex].Remove() 方法允许我们通过索引删除指定图片。要删除Excel中所有图片,可以遍历每张图片然后删除。示例代码如下:
from spire.xls import * from spire.xls.common import * # 加载Excel文档 workbook = Workbook() workbook.LoadFromFile("图标.xlsx") # 获取第一张工作表 sheet = workbook.Worksheets[0] # 删除工作表中所有图片 for i in range(sheet.Pictures.Count - 1, -1, -1): sheet.Pictures[i].Remove() # 删除指定图片 # sheet.Pictures[imgIndex].Remove() # 保存文档 workbook.SaveToFile("删除图片.xlsx", ExcelVersion.Version2013) workbook.Dispose()
上述示例能帮助掌握使用Python在Excel中插入、替换、删除图片的技巧,并进行一些基本的图片设置。如有问题,可前往论坛交流。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- 光流法结合深度学习神经网络的原理及应用(完整代码都有Python opencv)
- Python 图像处理进阶:特征提取与图像分类
- 大数据可视化分析-基于python的电影数据分析及可视化系统_9532dr50
- 【Python】入门(运算、输出、数据类型)
- 【Python】第一弹---解锁编程新世界:深入理解计算机基础与Python入门指南
- 华为OD机试E卷 --第k个排列 --24年OD统一考试(Java & JS & Python & C & C++)
- Python已安装包在import时报错未找到的解决方法
- 【Python】自动化神器PyAutoGUI —告别手动操作,一键模拟鼠标键盘,玩转微信及各种软件自动化
- Pycharm连接SQL Sever(详细教程)
- Python编程练习题及解析(49题)
点击排行
- 版本匹配指南:Numpy版本和Python版本的对应关系
- 版本匹配指南:PyTorch版本、torchvision 版本和Python版本的对应关系
- Python 可视化 web 神器:streamlit、Gradio、dash、nicegui;低代码 Python Web 框架:PyWebIO
- 相关性分析——Pearson相关系数+热力图(附data和Python完整代码)
- Anaconda版本和Python版本对应关系(持续更新...)
- Python与PyTorch的版本对应
- Windows上安装 Python 环境并配置环境变量 (超详细教程)
- Python pyinstaller打包exe最完整教程