在处理Excel表格时,有时会遇到需要删除整行或整列数据的情况。如果希望以编程方式实现自动化删除的操作,可以参考本文提供的三种使用Python删除Excel中行或列的方法:
以上方法需要借助Spire.XLS for Python库来完成,因此先使用pip命令安装该库。
pip install Spire.XLS
安装后,我们先快速浏览了解一下Spire.XLS for Python库提供的用于删除Excel中行或列的类、方法:
from spire.xls import *
from spire.xls.common import *
# 创建 Workbook 对象
workbook = Workbook()
# 加载 Excel 文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 删除第5行
sheet.DeleteRow(5)
# 删除第3列
sheet.DeleteColumn(3)
# 保存结果文件
workbook.SaveToFile("删除单行单列.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
from spire.xls import *
from spire.xls.common import *
# 创建 Workbook 对象
workbook = Workbook()
# 加载 Excel 文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 删除第3、4、5、6、7行 (共5行)
sheet.DeleteRow(3, 5)
# 删除第4列和第5列
sheet.DeleteColumn(4, 2)
# 保存结果文件
workbook.SaveToFile("删除多行多列.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
from spire.xls import *
from spire.xls.common import *
# 创建 Workbook 对象
workbook = Workbook()
# 加载 Excel 文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 删除空白行
for i in range(sheet.Rows.Length - 1, -1, -1):
if sheet.Rows[i].IsBlank:
sheet.DeleteRow(i + 1)
# 删除空白列
for j in range(sheet.Columns.Length - 1, -1, -1):
if sheet.Columns[j].IsBlank:
sheet.DeleteColumn(j + 1)
# 保存结果文件
workbook.SaveToFile("删除空白行空白列.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
通过这三个示例,我们可以使用Python删除Excel中的单行单列、多行多列、以及删除空白行空白列,满足不用的场景需求。另外,借助Spire.XLS for Python还可以完成生成、读取、编辑、转换Excel文件等多种操作,具体查看其中文在线教程。