close

python-docx庫是在Python代碼中創建和編輯Microsoft Word(.docx)文件的第三方庫,(.docx)是Microsoft Word 2007以上版本的文件格式,它是基於Office Open XML標準的壓縮文件格式。

下面介紹的Word實例採用python-docx庫實現了在Word文件(當使用循環的時候,則是成千上萬個Word文件,這就是程序的優勢)的末尾添加表格,這種情況通常出現在使用爬蟲或其他手段從網絡採集股票、期貨等實時行情數據,然後以Word文件格式(且每個Word文件的內容都不相同)將這些數據分發到各個粉絲。此實例的開發環境為PyCharm 2019.3.5 x64和Python 3.8。

01

實例功能


此實例主要通過使用python-docx庫的Document的add_table()方法實現在Word文件的末尾添加表格。當運行此實例的Python代碼(B074.py文件)之後,將在「快捷鍵.docx」文件的末尾添加一個表格,效果分別如圖1和圖2所示。


■圖1

■圖2


02

實現代碼

#導入docx庫importdocx#讀取Word文件'快捷鍵.docx'myDocument=docx.Document('快捷鍵.docx')#設置表格數據myData=[['功能說明','Windows','Mac OS'],['編輯菜單','Alt+E','Ctrl+F2+F'],['文件菜單','Alt+F','Ctrl+F2+E'],['視圖菜單','Alt+V','Ctrl+F2+V']]#在Word文件(myDocument)中根據行數、列數和樣式創建表格myTable=myDocument.add_table(rows=4,cols=3,style='Table Grid')#在單元格中寫入(添加)數據fori inrange(len(myData)):forj inrange(len(myData[i])):myTable.rows[i].cells[j].text=myData[i][j]#保存添加表格之後的Word文件myDocument.save('我的Word文件-快捷鍵.docx')

03

代碼說明


上面這段代碼在B074\B074.py文件中。在這段代碼中,myTable=myDocument.add_table (rows=4,cols=3,style='Table Grid')表示在Word文件(myDocument)的末尾添加一個4行3列的表格,rows=4表示表格的行數,cols=3表示表格的列數,style='Table Grid'表示創建網格狀(有線條的)的表格。myTable.rows[i].cells[j].text=myData[i][j]表示在指定的單元格中寫入數據,該代碼也可以寫成myTable.cell(i,j).text=myData[i][j]。


04

補充說明


此文檔內容根據清華大學出版社出版的圖書《Python輔助Word+Excel:讓辦公更高效》 的「302 在Word文件的末尾添加表格」改寫,內容略有變動。

05

視頻講解



06

源代碼下載

關注微信公眾號,後台回復關鍵詞「B074」即可獲得完整源代碼。


實例講解


Python輔助Word+Excel:

讓辦公更高效


精彩回顧



Python實例|將Excel文件的工作簿內容拆分為多個Excel文件



07

參考書籍

《Python輔助Word+Excel:讓辦公更高效》

ISBN:9787302592464

作者:羅帥、羅斌

定價:99.8元

掃碼優惠購書


347個典型辦公場景

問題描述+解決方案+真實源碼+效果截圖

Python+Word+Excel實現辦公自動化,

成倍提高辦公效率

優化數據分析,讓工作省點力!

告別重複勞動,蛻變職場精英!



內容簡介



本書以「問題描述+解決方案」的模式,通過300餘個案例分別介紹使用Python代碼批量處理Excel和Word的技術亮點。

全書內容分為兩部分:

在第一部分的Python實戰Excel案例中,主要介紹使用Python代碼將多個工作表拼接成一個工作表;使用列表推導式累加多個工作表;使用對稱差集方法篩選工作表;將一維工作錶轉換為二維工作表;使用插入行方法製作工資條;根據指定字符將單列拆分為多列;使用字典對工作表的數據分類求和;根據工作表的數據創建3D餅圖、3D條形圖、3D面積圖、圓環圖、柱形圖、雷達圖、氣泡圖、折線圖、股票圖等。

在第二部分的Python實戰Word案例中,主要介紹使用Python代碼自定義Word文件的段落、塊、節、樣式、表格、圖像等。通過本書案例的學習,讀者不僅可以體驗Python語言的精妙之處,還能對採用Python代碼批量處理Excel文件和Word文件產生全新的認知。

本書適合作為Python程序員、數據分析師、營銷人員、管理人員、科研人員、教師、學生等各類人士進行數據分析和辦公事務處理的案頭參考書,無論是初學者還是專業人士,本書都極具參考和收藏價值。


目錄



向上滑動閱覽

第1部分Python實戰Excel案例

001批量創建空白的Excel文件

002批量創建非空白的Excel文件

003使用字典拆分多個工作簿

004使用嵌套字典拆分多個工作簿

005在工作簿中創建空白工作表

006根據指定位置創建空白工作表

007在工作簿中複製多個工作表

008在工作簿中根據表名刪除工作表

009在工作簿中根據位置刪除工作表

010自定義活動工作表的表名

011自定義所有工作表的表名

012自定義工作表的表名背景顏色

013設置修改工作表的保護密碼

014在指定位置插入多個空白行

015在工作表的末尾添加新行

016在起始為空的工作表中添加數據

017在起始為空的工作表中計算數據

018在工作表中移動指定範圍的數據

019將篩選結果添加到新建的工作表

020將匯總結果添加到新建的工作表

021將一個工作表拆分成多個工作表

022將多個工作表拼接成一個工作表

023使用列表操作符拼接兩個工作表

024使用列表推導式累加多個工作表

025使用集合方法拼接兩個工作表

026使用集合方法拼接多個工作表

027使用集合方法篩選兩個工作表

028使用對稱差集方法篩選工作表

029使用列表關鍵字篩選兩個工作表

030使用filter()函數轉換二維工作表

031使用zip()函數轉換一維工作表

032使用map()函數轉換一維工作表

033使用rows屬性獲取工作表的所有行

034使用iter_rows()方法指定數據範圍

035使用起止行號獲取指定範圍的行

036根據行號獲取該行的所有單元格

037根據起止行號隱藏指定範圍的行

038自定義工作表指定行的高度

039使用交錯顏色設置行的背景

040根據特定要求對每行數據求和

041使用列表推導式對多行數據求和

042使用插入行方法製作工資條

043在指定位置連續刪除多行數據

044使用集合隨機刪除一行數據

045根據指定條件刪除多行數據

046在工作表中刪除所有重複的行

047使用行參數隨機排列工作表

048倒序排列工作表的所有數據

049根據首列數據升序排列工作表

050根據指定列數據升序排列工作表

051根據指定列數據降序排列工作表

052根據字符串長度倒序排列工作表

053使用集合實現隨機排列工作表

054根據間隔行數正序篩選所有行

055根據間隔行數倒序篩選所有行

056使用max()函數篩選最大值所在的行

057使用關鍵字篩選符合條件的行

058使用列表設置條件對行進行篩選

059使用或運算組合條件對行進行篩選

060使用與運算組合條件對行進行篩選

061使用集合對行進行隨機篩選

062使用交集方法篩選多個工作表的行

063使用集合推導式對行進行篩選

064使用集合在多行多列中篩選數據

065使用columns獲取工作表的所有列

066使用iter_cols()方法指定數據範圍

067使用行列起止編號指定數據範圍

068使用起止列號獲取指定範圍的列

069根據列號獲取該列的所有單元格

070根據起止列號隱藏指定範圍的列

071凍結指定單元格之前的行和列

072將數字列號轉換為字母列號

073將字母列號轉換為數字列號

074自定義工作表指定列的寬度

075根據字符串的最大長度設置列寬

076使用交錯顏色設置列的背景

077在指定位置插入多個空白列

078在指定位置連續刪除多列數據

079使用切片方法將一列拆分為兩列

080根據指定字符將一列拆分為兩列

081根據指定字符將一列拆分為多列

082根據不同字符將一列拆分為多列

083使用join()方法將多列拼接為一列

084將指定列的數據插入其他列

085使用zip()函數實現按列對數據求和

086使用列表推導式實現按列對數據求和

087使用列表推導式實現對多列數據求和

088使用列表推導式獲取列的最大值

089根據單列數據計算其他列數據

090根據多列數據計算其他列數據

091使用字典推導式交換兩列的數據

092使用shuffle()方法隨機排列多列數據

093使用values屬性獲取所有單元格數據

094使用value屬性讀寫指定單元格數據

095使用cell()方法在單元格中寫入數據

096在每行的末尾單元格中寫入數據

097在單元格中寫入計算平均值公式

098在複製單元格時禁止複製公式

099在單元格中自定義貨幣格式

100在單元格中自定義日期格式

101在單元格中自定義時間格式

102在單元格的數據上添加刪除線

103在單元格的數據上添加雙下畫線

104自定義在單元格中的文本顏色

105根據多個參數創建自定義字體

106在單元格中實現垂直居中內容

107在單元格中實現靠右對齊內容

108在單元格中根據角度旋轉內容

109在單元格中自動換行超長內容

110使用指定顏色設置單元格的背景

111使用漸變色設置單元格的背景

112使用網格線設置單元格的背景

113使用細實線設置單元格的背景

114使用斜紋線設置單元格的背景

115使用粗實線設置單元格的邊框

116使用預置表格樣式設置單元格

117在單元格中將單行內容拆為多行

118根據指定的參數合併多個單元格

119將合併單元格拆分為多個單元格

120拆分工作表的所有合併單元格

121清除工作表的所有合併單元格

122在單元格中添加過濾器過濾數據

123在多個單元格中替換指定的內容

124在多個單元格中刪除指定的內容

125統計相同內容在單元格中的次數

126統計部分內容在單元格中的次數

127根據次數重複單元格的部分內容

128解析在單元格中的身份證日期信息

129使用集合比較單元格的無序內容

130使用集合刪除單元格的重複內容

131使用列表刪除單元格的重複內容

132使用字典對單元格數據分類求和

133使用sum()函數計算單元格的分類合計

134計算多個單元格的分類平均值

135在多個單元格中分類篩選最大值

136在多個單元格中分類篩選最小值

137使用map()函數規範在單元格中的單詞

138在包含空白的單元格中使用map()函數

139在指定的單元格中添加批註

140在指定的單元格中添加圖像

141將圖像縮放之後添加到單元格

142將圖像旋轉之後添加到單元格

143將圖像裁剪之後添加到單元格

144將圖像拼接之後添加到單元格

145將圖像水平鏡像後添加到單元格

146將圖像垂直鏡像後添加到單元格

147將圖像黑白轉換後添加到單元格

148將圖像模糊處理後添加到單元格

149調整圖像對比度並添加到單元格

150調整圖像亮度並添加到單元格

151調整圖像色度並添加到單元格

152調整圖像銳度並添加到單元格

153根據索引刪除在單元格中的圖像

154創建工作表及關聯的餅圖

155根據工作表數據創建餅圖

156自定義餅圖及圖例的寬度

157自定義餅圖及圖例的樣式

158自定義餅圖的圖例位置

159自定義餅圖(本身)的大小

160自定義餅圖(本身)的位置

161自定義餅圖切片的填充顏色

162在餅圖切片中不設置填充顏色

163使用網格填充餅圖的指定切片

164在餅圖的切片上顯示百分比

165在餅圖的切片上顯示數值

166自定義餅圖切片的文字大小

167在餅圖中創建凸出顯示的切片

168根據工作表的數據創建3D餅圖

169使用獨立餅圖投影餅圖小切片

170使用獨立條形圖投影餅圖小切片

171使用未填充的切片創建扇形圖

172根據工作表的數據創建圓環圖

173在圓環圖中自定義內孔的大小

174自定義圓環圖首個切片的位置

175在圓環圖中創建凸出顯示的切片

176根據多列數據創建嵌套圓環圖

177根據工作表的數據創建柱形圖

178自定義柱形圖各個柱子的樣式

179在柱形圖中創建點狀樣式的柱子

180在柱形圖中創建水平條紋的柱子

181在柱形圖中指定柱子的填充樣式

182自定義柱形圖柱子的填充顏色

183自定義柱形圖柱子的邊框顏色

184在柱形圖的柱子頂端添加數值

185自定義柱形圖柱子的字體大小

186根據工作表的行數據創建柱形圖

187根據工作表多列數據創建柱形圖

188根據工作表數據創建堆疊柱形圖

189根據比例創建百分比堆疊柱形圖

190根據工作表數據創建3D柱形圖

191自定義3D柱形圖的樣式

192根據多列數據創建堆疊3D柱形圖

193創建百分比風格的堆疊3D柱形圖

194根據工作表的數據創建3D條形圖

195根據多列數據創建堆疊3D條形圖

196使用深度複製方法創建3D條形圖

197根據工作表的數據創建折線圖

198禁止在折線圖中繪製默認的圖例

199自定義折線圖的折線及背景樣式

200自定義折線圖的折線顏色和寬度

201在折線圖中使用虛線繪製折線

202在折線圖的數據點上繪製圖形符號

203在折線圖中禁止繪製默認的折線

204自定義折線圖數據點的圖形符號

205在折線圖的各個數據點上添加數值

206在折線圖中禁止繪製y軸主刻度線

207在折線圖的右端繪製y軸的刻度值

208在折線圖的右端繪製y軸及刻度值

209自定義折線圖的x軸和y軸標題

210自定義折線圖x軸的日期格式

211自定義折線圖x軸的時間格式

212在折線圖的頂部繪製x軸及標籤

213自定義折線圖x軸的標籤字體

214降序繪製折線圖x軸的標籤刻度

215自定義折線圖坐標軸的最大值

216根據工作表數據創建多條折線圖

217根據工作表數據創建堆疊折線圖

218根據比例創建百分比堆疊折線圖

219根據工作表的數據創建3D折線圖

220根據工作表的數據創建面積圖

221根據工作表的數據創建3D面積圖

222根據隨機數創建工作表及散點圖

223根據工作表的數據創建雷達圖

224根據工作表的多列數據創建雷達圖

225根據最高價和最低價創建股票圖

226根據開盤價和收盤價創建股票圖

227自定義參數改變股票圖線框寬度

228根據交易價和成交量創建股票圖

229根據工作表的多列數據創建氣泡圖

第2部分Python實戰Word案例

230在Word文件的末尾追加段落

231在Word文件的段前插入段落

232在Word文件中刪除指定段落

233在Word文件中調整段落位置

234在段落的段前和段後設置間距

235在段落中使用英寸設置行間距

236在段落中使用磅數設置行間距

237禁止指定段落分散在兩個頁面

238強制兩個段落在同一頁面中

239在指定段落之前強制執行分頁

240自定義指定段落的對齊樣式

241自定義指定段落的縮進尺寸

242自定義段落首行的縮進尺寸

243在指定段落中實現懸掛縮進

244在添加段落時設置段落樣式

245在Word文件中刪除指定樣式

246在段落的樣式屬性中設置字體

247在段落的樣式屬性中設置顏色

248使用樣式改變多個段落的字體

249使用樣式改變多個段落的高亮顏色

250使用樣式改變多個段落的首行縮進

251使用正則表達式查找樣式名稱

252在指定段落中實現替換文本

253在所有段落中實現替換文本

254在指定段落末尾添加新塊

255在塊與塊之間添加行中斷

256在塊與塊之間添加頁中斷

257根據文本內容隱藏指定塊

258自定義指定塊的高亮顏色

259自定義指定塊的文本顏色

260使用主題顏色設置塊的文本

261使用已有樣式設置塊的樣式

262使用中文字體設置塊的字體

263在塊中實現鏤空效果的文本

264在塊中實現雕刻效果的文本

265在塊中設置粗斜體樣式的文本

266在塊中設置扁平樣式的文本

267在塊的文本底部添加波浪線

268在塊的文本底部添加點線

269在塊的文本底部添加虛線

270在塊的文本底部添加點畫線

271在塊的文本底部添加下畫線

272自定義塊的文本下畫線顏色

273在塊中逐字添加獨立下畫線

274在塊的文本中部添加刪除線

275在塊的文本四周添加線框

276在塊的文本底部添加着重號

277在塊中創建上標樣式的文本

278在塊中自定義字符之間的間距

279在段落中大寫每個單詞首字母

280在塊中強制大寫每個英文字母

281以小號字體大寫塊的英文字母

282在段落末尾的塊中創建超鏈接

283在超鏈接文本的底部添加點線

284設置超鏈接文本和下畫線的顏色

285將Word文件的圖像保存為文件

286在Word文件的末尾添加圖像

287自定義Word文件的圖像尺寸

288在Word文件的塊中添加圖像

289在Word文件的段前插入圖像

290居中對齊Word文件的單個圖像

291分散對齊Word文件的多個圖像

292在Word文件中創建摺疊標題

293在Word文件中創建多級標題

294設置標題在水平方向的對齊樣式

295在Word文件中創建無序列表

296在無序列表左端設置縮進距離

297在Word文件中創建有序列表

298在Word文件中添加標題樣式

299在Word文件中添加副標題樣式

300在Word文件中添加引用樣式

301在Word文件中添加明顯引用樣式

302在Word文件的末尾添加表格

303在Word文件中刪除指定表格

304在Word文件的表格中添加新行

305在Word文件的表格中添加新列

306在Word文件的表格中添加圖像

307自定義Word文件的表格行高

308自定義Word文件的表格列寬

309自定義Word文件的表格邊框

310自定義Word文件的表格字體

311自定義Word文件的表格樣式

312自定義Word文件的表格對齊方式

313自定義表格的單元格邊框顏色

314自定義表格的單元格邊框粗細

315自定義表格的單元格背景顏色

316自定義表格的單元格文本顏色

317設置單元格文本的水平對齊方式

318設置單元格圖像的垂直對齊方式

319設置圖像與單元格的右上角對齊

320設置單元格的多個圖像分散對齊

321在表格中合併多個連續的單元格

322根據行號刪除在表格中的行

323根據列號刪除在表格中的列

324根據條件刪除在表格中的行

325根據條件刪除在表格中的列

326根據條件篩選在表格中的行

327按行對多個單元格的數據求和

328按列對多個單元格的數據求和

329在Word文件中創建多個節

330強制從偶數頁開始創建每個節

331在Word文件的節中添加頁眉

332在Word文件的節中添加分區頁眉

333在指定節中自定義偶數頁的頁眉

334在指定節中自定義首頁的頁眉

335自定義指定節的頁眉與邊緣的距離

336在Word文件的節中添加頁腳

337在Word文件的節中添加分區頁腳

338在指定節中自定義偶數頁的頁腳

339在指定節中自定義首頁的頁腳

340自定義指定節的頁腳與邊緣的距離

341自定義指定節頁面的左右邊距

342自定義指定節頁面的紙張大小

343強制兩節的內容出現在同一頁面中

344強制指定的節從奇數頁開始

345在Word文件的頁面上添加線框

346設置Word文件的頁面背景顏色

347自定義Word文件的作者等信息


08

精彩推薦


微信小程序遊戲開發│猜數字小遊戲(附源碼+視頻)
Flink編程基礎│Scala編程初級實踐
Flink編程基礎│FlinkCEP編程實踐
Flink編程基礎│DataStream API編程實踐
Flink編程基礎│DataSet API編程實踐
數據分析實戰│客戶價值分析
數據分析實戰│價格預測挑戰
數據分析實戰│時間序列預測
數據分析實戰│KaggleTitanic生存預測


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()