Python 辦公自動化之 Word 最全總結

. 前言

日常自動化辦公中抵怎,使用 Python 真的能做到事半功倍栏饮!

在上一個系列中,我們對?Python 操作 Excel 進行了一次全面總結

最全總結 | 聊聊 Python 辦公自動化之 Excel(上)

最全總結 | 聊聊 Python 辦公自動化之 Excel(中)

最全總結 | 聊聊 Python 辦公自動化之 Excel(下)

從本篇文章開始曙咽,我們繼續(xù)聊聊另外一種常見的文檔格式:?Word

2. 準備

Python 操作 Word 最常見的依賴庫是:?python-docx

所以,在開始操作之前嚣崭,我們需要在虛擬環(huán)境下安裝這個依賴庫

# 安裝依賴pip3install python-docx

3. 寫入實戰(zhàn)

我們需要了解一個 Word 文檔的頁面結構

它們分別是:

文檔 -?Document

章節(jié) -?Section

段落 -?Paragraph

文字塊 -?Run

經(jīng)常操作?的數(shù)據(jù)類型包含:?段落、?標題懦傍、?列表雹舀、?圖片、?表格粗俱、?樣式

首先说榆,使用??Document?創(chuàng)建一個文檔對?象,相當于創(chuàng)建一個空白文檔

fromdocximportDocument# 1寸认、新建一個空白文檔doc = Document()

然后签财,就可以往文檔中寫入數(shù)據(jù)了

使用文檔對象的???add_heading(text,level)??方法可以寫入標題

其中,第 1 個參數(shù)為標題內(nèi)容偏塞,第 2 個參數(shù)代表標題的級別

比如:分別寫入一級標題唱蒸、二級標題、三級標題

#2灸叼、新增內(nèi)容#2.1標題# 分別寫入一個一級標題神汹,一個二級標題,一個三級標題doc.add_heading('一級標題',0)doc.add_heading('二級標題',1)doc.add_heading('三級標題',2)

段落 Paragraph 包含 3 類古今,分別是:

普通段落

自定義樣式的段落

引用段落

默認情況下屁魏,?使用文?檔對象的???add_paragraph(text,style)?方法來添加一個段落

普通段落:?假如第二個參數(shù) style 沒有傳入,則代表添加一個普通的段落

引用段落:?對于引用段落捉腥,?只需要指定段落?樣式為??Intense Quote?即可

# 2.2.1 新增普通段落doc.add_paragraph("我是一個普通段落氓拼。")# 2.2.3 新增一個引用段落# 只需要指定樣式為:Intense Quotedoc.add_paragraph('--我是一個引用段落--', style='Intense Quote')

自定義樣式的段落:?這里有 2 種實現(xiàn)方式

分別是:

創(chuàng)建一個空的段落對象,增加文字塊 Run 的時候抵碟,同時指定字體樣式

使用文檔對象?創(chuàng)建一個新的樣式(或已經(jīng)存在的樣式)披诗,然后添加段落的時候,設置到第二個參數(shù)中

考慮到樣式的樣式的復用性立磁,第 2 種方式可能更實用

對應的方法是:

document.styles.add_style(style_name,type)?

以第 2 種實現(xiàn)方式為例,新增一個自定義樣式的段落剥槐,設置段落的字體名稱唱歧、大小、顏色粒竖、是否加粗颅崩、對齊方式等

PS:第 1 種實現(xiàn)方式,文末源碼會提供

該方法第 2 個參數(shù)用來指定樣式類型蕊苗,包含 3 種

分別對應關系如下:

1:段落樣式

2:字符樣式

3:表格樣式



需要注意的是沿后,?新添加的樣式的時候,必須先判斷樣式名稱是否存在朽砰,否則會報錯

最后尖滚,添加段落的時候喉刘,將上面創(chuàng)建的樣式傳入到第 2 個參數(shù)中即可

使用add_paragraph() 方法添加一個段落,返回值為一個段落對象



其中漆弄,

第 1 個參數(shù)代表圖片路徑或者圖片流(網(wǎng)絡圖片)

第 2睦裳、3 個參數(shù)用于設置圖片的寬、高

需要注意的是撼唾,?如果沒有顯式指定寬高廉邑,則以圖片原生尺寸展示;如果僅設置了其中一個倒谷,則會按照設置的一個做等比縮放顯示

寫入本地圖片很簡單



其中蛛蒙,

第 1 個參數(shù):表格的行數(shù)目

第 2 個參數(shù):?表格的列數(shù)目

第 3?個參數(shù):?表格的樣式

使用行/列索引,可以獲取表格中某一行/列所有的單元格對象組成的列表



需要指出的是渤愁,?表格默認采用的樣式是?Table Grid牵祟,也可以使用上面的方法自定義一個表格樣式,插入表格的同時設置進去即可

4. 最后

本篇文章就 Word 寫入數(shù)據(jù)的常規(guī)操作進行了一次全面梳理猴伶,更多功能包含:?讀取课舍、修改、查找他挎、刪除等實戰(zhàn)內(nèi)容后面會持續(xù)輸出

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末筝尾,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子办桨,更是在濱河造成了極大的恐慌筹淫,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件呢撞,死亡現(xiàn)場離奇詭異损姜,居然都是意外死亡,警方通過查閱死者的電腦和手機殊霞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進店門摧阅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人绷蹲,你說我怎么就攤上這事棒卷。” “怎么了祝钢?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵比规,是天一觀的道長。 經(jīng)常有香客問我拦英,道長蜒什,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任疤估,我火速辦了婚禮灾常,結果婚禮上霎冯,老公的妹妹穿的比我還像新娘。我一直安慰自己岗憋,他們只是感情好肃晚,可當我...
    茶點故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著仔戈,像睡著了一般关串。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上监徘,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天晋修,我揣著相機與錄音,去河邊找鬼凰盔。 笑死墓卦,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的户敬。 我是一名探鬼主播落剪,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼尿庐!你這毒婦竟也來了翔悠?” 一聲冷哼從身側響起攀圈,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤机久,失蹤者是張志新(化名)和其女友劉穎浅缸,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體皮假,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡鞋拟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了惹资。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贺纲。...
    茶點故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖褪测,靈堂內(nèi)的尸體忽然破棺而出猴誊,到底是詐尸還是另有隱情,我是刑警寧澤汰扭,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站福铅,受9級特大地震影響萝毛,放射性物質發(fā)生泄漏。R本人自食惡果不足惜滑黔,卻給世界環(huán)境...
    茶點故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一笆包、第九天 我趴在偏房一處隱蔽的房頂上張望环揽。 院中可真熱鬧,春花似錦庵佣、人聲如沸歉胶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽通今。三九已至,卻和暖如春肛根,著一層夾襖步出監(jiān)牢的瞬間辫塌,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工派哲, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留臼氨,地道東北人。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓芭届,卻偏偏與公主長得像储矩,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子褂乍,可洞房花燭夜當晚...
    茶點故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容