欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python使用docx模塊編輯Word文檔

 更新時間:2023年07月19日 11:27:35   作者:W金剛葫蘆娃W  
docx提供了一組功能豐富的函數(shù)和方法,用于創(chuàng)建、修改和讀取Word文檔,Python可以用它對word文檔進行大批量的編輯,下面小編就來通過一些示例為大家好好講講吧

前言

該模塊可以通過python代碼來對word文檔進行大批量的編輯。docx它提供了一組功能豐富的函數(shù)和方法,用于創(chuàng)建、修改和讀取Word文檔。下面是docx模塊中一些常用的函數(shù)和方法的介紹:

安裝:

pip install docx

一、準(zhǔn)備一個word文檔

文檔內(nèi)容大致如下

二、讀取文檔中的內(nèi)容

1、讀取段落內(nèi)容

通過遍歷 doc.paragraphs 來獲取文檔中的每個段落的文本內(nèi)容。

from docx import Document
path = 'test.docx'         #word文檔路徑
doc  = Document(path)   #創(chuàng)建一個文檔對象
#遍歷文檔中的所有段落
for par in doc.paragraphs:
    text = par.text
    print(text)

輸出的結(jié)果如下:

2、讀取表格內(nèi)容

from docx import Document
path = 'test.docx'         #word文檔路徑
doc  = Document(path)   #創(chuàng)建一個文檔對象
# 遍歷文檔中的表格
for table in doc.tables:
    for row in table.rows:
        for cell in row.cells:
            text = cell.text
            print(text)

輸出的結(jié)果如下:

三、修改

修改內(nèi)容需要注意,需要配合document.save(file_path):將文檔保存到指定的文件路徑file_path。

1、修改文檔內(nèi)容

比如把文檔中的   “所有的123”  替換成   “好好學(xué)習(xí)”

from docx import Document
path = 'test.docx'         #word文檔路徑
doc  = Document(path)   #創(chuàng)建一個文檔對象
# 遍歷文檔中的所有段落
for par in doc.paragraphs:
    text = par.text
    if '123' in par.text:
        par.text = par.text.replace('123','好好學(xué)習(xí)!')
#凡是有保存功能的,需要先把原文檔關(guān)閉才可以編輯
doc.save(path)  #注意這里如果使用的原文檔的路徑,則會直接對原文檔的內(nèi)容進行修改,
new_path = 'new_test.docx'    #創(chuàng)建一個新路徑
doc.save(new_path)          #這里則會把內(nèi)容保存到一個新文檔中

輸出結(jié)果:

因為我這里保存了兩個路徑: 

1、可以看到這里新生成了一個word文檔

2、查看兩個文檔中的內(nèi)容

原文檔:

新生成文檔:

總結(jié):

1、思路:

先定位修改的內(nèi)容——>然后賦值——>保存(沒有修改的內(nèi)容都會原樣保存下來)

2、運行修改的功能時候需要把原文檔關(guān)閉;

3、如果不生成新的文檔則切記,修改內(nèi)容不可逆?。。?nbsp;

2、修改表格內(nèi)容

把表格中的    “休息”  替換成  “預(yù)習(xí)”

這里可以多復(fù)制幾張表格

按照上面的思路來:

1、先定位,找到修改目標(biāo)的坐標(biāo)

from docx import Document
path = 'test.docx'         #word文檔路徑
doc  = Document(path)   #創(chuàng)建一個文檔對象
tables = doc.tables
#獲取表格中所有內(nèi)容對應(yīng)的坐標(biāo)
for i, row in enumerate(tables[0].rows):
    for j, cell in enumerate(row.cells):
        print( f'[+]{cell.text}    [+]對應(yīng)的坐標(biāo)是   ({i}, {j})\n')
 

輸出結(jié)果:

這里注意(這里找坐標(biāo)和我們平時看表的習(xí)慣不一樣,他們并沒有邏輯上的關(guān)系,而只是單純的坐標(biāo)來對應(yīng))

2、記住這個坐標(biāo)我們后面就可以對所有的表進行修改:

注意下面代碼中的  cell(2,1) 中的坐標(biāo)就是上面我們找到的坐標(biāo),通過tables[tab]是逐一遍歷出每一張表格,然后把對應(yīng)的坐標(biāo)文檔替換為  '預(yù)習(xí)'.

from docx import Document
path = 'test.docx'         #word文檔路徑
doc  = Document(path)   #創(chuàng)建一個文檔對象
tables = doc.tables         #這里已經(jīng)把文檔中的所有表格都取出來了,以列表的形式存儲
#獲取表格中所有內(nèi)容對應(yīng)的坐標(biāo)
for tab in range(len(tables)):
        tables[tab].cell(2,1).text='預(yù)習(xí)'
# #凡是有保存功能的,需要先把原文檔關(guān)閉才可以編輯
doc.save(path)  #注意這里如果使用的原文檔的路徑,則會直接對原文檔的內(nèi)容進行修改,

輸出結(jié)果:

到此這篇關(guān)于Python使用docx模塊編輯Word文檔的文章就介紹到這了,更多相關(guān)Python docx編輯Word內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Django框架中用context來解析模板的方法

    詳解Django框架中用context來解析模板的方法

    這篇文章主要介紹了詳解Django框架中用context來解析模板的方法,Django是重多高人氣Python框架中最為著名的一個,需要的朋友可以參考下
    2015-07-07
  • Django的models模型的具體使用

    Django的models模型的具體使用

    這篇文章主要介紹了Django的models模型的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Python預(yù)測分詞的實現(xiàn)

    Python預(yù)測分詞的實現(xiàn)

    本文將結(jié)合實例代碼,介紹Python預(yù)測分詞的實現(xiàn),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-06-06
  • Django之提交表單與前后端交互的方法

    Django之提交表單與前后端交互的方法

    今天小編就為大家分享一篇Django之提交表單與前后端交互的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python處理日期和時間的方法總結(jié)

    Python處理日期和時間的方法總結(jié)

    這篇文章主要介紹了Python時間和日期的處理方法總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03
  • Python+Tkinter打造簽名設(shè)計工具

    Python+Tkinter打造簽名設(shè)計工具

    這篇文章主要為大家分享如何利用Python Tkinter庫制作帶圖形界面的一個簽名設(shè)計工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-04-04
  • 關(guān)于Django外鍵賦值問題詳解

    關(guān)于Django外鍵賦值問題詳解

    這段時間用django 做程序用到了一對多的關(guān)系的操作,下面分享一些心得體會,這篇文章主要給大家介紹了關(guān)于Django外鍵賦值問題的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-08-08
  • 一文教你利用Python租到最合適的房子

    一文教你利用Python租到最合適的房子

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言在爬取到房源數(shù)據(jù)后,挑選出符合自己要求的房子呢?感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-09-09
  • Python數(shù)據(jù)可視化編程通過Matplotlib創(chuàng)建散點圖代碼示例

    Python數(shù)據(jù)可視化編程通過Matplotlib創(chuàng)建散點圖代碼示例

    這篇文章主要介紹了Python數(shù)據(jù)可視化編程通過Matplotlib創(chuàng)建散點圖實例,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Python基礎(chǔ)學(xué)習(xí)之模塊的安裝和卸載

    Python基礎(chǔ)學(xué)習(xí)之模塊的安裝和卸載

    其實現(xiàn)在還是有很多剛開始學(xué)習(xí)的小伙伴,會遇到模塊不會安裝的情況,或者一遇到報錯就懵了,這樣就很耽誤我們的學(xué)習(xí)進度。所以,今天我們就來了解一下Python幾種安裝模塊的方法吧
    2022-09-09

最新評論