使用Python在Word表格中插入或刪除行或列的幾種方法
所需Python庫:Spire.Doc for Python。該P(yáng)ython Word庫支持幾乎所有的Word文檔元素,可以在Word中實(shí)現(xiàn)創(chuàng)建、操作表格等。
可以通過pip進(jìn)行安裝:
pip install Spire.Doc
Python 在Word表格中插入行
Spire.Doc for Python 提供了兩種不同的方法,支持在Word表格中間指定位置處插入新行,或者在表格末尾添加新行。用到的主要方法如下:
Table類:代表Word文檔中的表格。Table.Rows.Insert(index, row)方法:在表格指定位置插入一行。Table.AddRow()方法:在表格末尾添加一行。
示例代碼:
from spire.doc import *
from spire.doc.common import *
# 加載Word文檔
document = Document()
document.LoadFromFile("Word表格.docx")
# 獲取第一節(jié)
section = document.Sections[0]
# 獲取該節(jié)中第一個表格
table = section.Tables[0] if isinstance(section.Tables[0], Table) else None
# 插入一行作為第四行
table.Rows.Insert(3, table.AddRow())
# 在表格末尾添加一行
addedRow = table.AddRow()
# 保存文件
document.SaveToFile("插入行.docx", FileFormat.Docx2016)
document.Close()
生成文件如圖:

Python 在Word表格中插入列
與插入行不同,插入列沒有可以直接調(diào)用的方法。為了實(shí)現(xiàn)插入列的效果,我們可以在每一行中的指定位置插入單元格來添加新列。具體操作如下:
- 通過
LoadFromFile()方法加載Word文檔; - 查找文檔指定節(jié)中查找并返回其中第一個表格
Table對象; - 遍歷表格中的每一行;
- 創(chuàng)建單元格,然后使用
TableRow.Cells.Insert()方法將其插入到每行指定位置處; - 也可以使用
TableRow.AddCell()方法直接在每行末尾處添加一個單元格; - 保存文檔。
示例代碼:
from spire.doc import *
from spire.doc.common import *
# 加載Word文檔
document = Document()
document.LoadFromFile("Word表格.docx")
# 獲取第一節(jié)
section = document.Sections[0]
# 獲取該節(jié)中的第一個表格
table = section.Tables[0] if isinstance(section.Tables[0], Table) else None
# 遍歷表格的每一行
for i in range(table.Rows.Count):
# 獲取當(dāng)前行
row = table.Rows[i]
# 在當(dāng)前行的第三個位置處插入一個單元格
cell = TableCell(document)
row.Cells.Insert(2, cell)
# 設(shè)置新單元格的寬度
row.Cells[2].SetCellWidth(40, CellWidthType.Point)
# 在當(dāng)前行的末尾添加一個新的單元格
cell = row.AddCell()
# 設(shè)置新單元格的寬度與第二列相同
cell.Width = row.Cells[1].Width
# 保存文件
document.SaveToFile("插入列.docx", FileFormat.Docx2016)
document.Close()
生成文件如圖:

Python 刪除Word表格中的指定行和列
- 要刪除表格中指定某行,可以直接調(diào)用
Table.Rows.RemoveAt()方法按索引刪除。 - 而刪除指定列則需要遍歷表格中每一行,然后使用
TableRow.Cells.RemoveAt()方法刪除每一行中的指定單元格。
示例代碼:
from spire.doc import *
from spire.doc.common import *
# 加載Word文檔
document = Document()
document.LoadFromFile("Word表格.docx")
# 獲取第一節(jié)
section = document.Sections[0]
# 獲取該節(jié)中第一個表格
table = section.Tables[0] if isinstance(section.Tables[0], Table) else None
# 刪除第二行
table.Rows.RemoveAt(1)
# 遍歷表格中每一行
for i in range(table.Rows.Count):
# 刪除每一行中的第3個單元格
row = table.Rows[i]
row.Cells.RemoveAt(2)
# 保存文檔
document.SaveToFile("刪除行和列.docx", FileFormat.Docx2016)
document.Close()
生成文件如圖 (原表格為4x6):

到此這篇關(guān)于使用Python在Word表格中插入或刪除行或列的幾種方法的文章就介紹到這了,更多相關(guān)Python Word插入或刪除行或列內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python原生代碼實(shí)現(xiàn)高效接口測試的終極指南
在軟件開發(fā)流程中,接口測試是保障系統(tǒng)穩(wěn)定性的關(guān)鍵防線,本文將通過實(shí)戰(zhàn)案例,深入探討如何利用 Python 進(jìn)行高效的接口測試,涵蓋從基礎(chǔ)請求發(fā)送到復(fù)雜場景處理的完整流程,有需要的小伙伴可以了解下2026-01-01
pd.DataFrame統(tǒng)計(jì)各列數(shù)值多少的實(shí)例
今天小編就為大家分享一篇pd.DataFrame統(tǒng)計(jì)各列數(shù)值多少的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
django做form表單的數(shù)據(jù)驗(yàn)證過程詳解
這篇文章主要介紹了django做form表單的數(shù)據(jù)驗(yàn)證過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
微信小程序前端如何調(diào)用python后端的模型詳解
近期需要開發(fā)一個打分的微信小程序,涉及到與后臺服務(wù)器的數(shù)據(jù)交互,這篇文章主要給大家介紹了關(guān)于微信小程序前端如何調(diào)用python后端模型的相關(guān)資料,需要的朋友可以參考下2022-04-04
pandas DataFrame 賦值的注意事項(xiàng)說明(index)
這篇文章主要介紹了pandas DataFrame 賦值的注意事項(xiàng)說明(index),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
Python實(shí)現(xiàn)自動清理電腦垃圾文件詳解
經(jīng)常存在在我們的電腦中的垃圾文件主要是指系統(tǒng)在運(yùn)行過程中產(chǎn)生的tmp臨時(shí)文件、日志文件、臨時(shí)備份文件等。本文將利用Python實(shí)現(xiàn)自動清理這些垃圾文件,需要的可以參考一下2022-03-03

