日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python:docx模块

發布時間:2025/3/21 python 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python:docx模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python讀寫word文檔有現成的庫可以處理。我這里采用 python-docx。可以用pip install python-docx安裝一下。

這里說一句,ppt和excel也有類似的庫哦,而且是直接讀取文件里面的xml數據。所以doc格式得另找其他庫處理,doc格式不是基于xml的。

幫助文檔:http://python-docx.readthedocs.org/en/latest/

1、新建或打開文件。這個比較簡單用docx的Document類,若指定路徑則是打開文檔;若沒有指定路徑則是新建文檔。

import?docx# 新建文檔 doc_new?=?docx.Document()# 讀取文檔 doc?=?docx.Document(ur'C:\1.docx')

2、保存文件。有打開,就有保存。用Document類的save方法,其中參數是保存的文件路徑,或者要保存的文件流。一般指定路徑即可。

doc.save(path_or_stream)

3、對象集合。python-docx包含了word文檔的相關對象集合。

  • doc.paragraphs? ? ? ? ? ? # 段落集合

  • doc.tables? ? ? ? ? ? ? ? ? ? # 表格集合

  • doc.sections? ? ? ? ? ? ? ? # 節??集合

  • doc.styles? ? ? ? ? ? ? ? ? ? # 樣式集合

  • doc.inline_shapes? ? ? ?#?內置圖形?等等...

4、插入段落。段落是word最基本的對象之一。

doc.add_paragraph(u'第一段', style=None)? ?# 插入一個段落,文本為“第一段”# 默認是不應用樣式,這里也可以不寫style參數,或者指定一個段落樣式doc.add_paragraph(u'第二段', style='Heading?2')# 這些樣式都是word默認帶有的樣式,可以直接羅列出來有哪些段落樣式 print?[s.name?for?s?in?doc.styles?if?s.type==1]

5、新增樣式。這個幫助文檔里面說得不仔細,而且還是英文的。我手頭上的項目用到這個,就自己琢磨出怎么使用,如下。

#coding:utf-8from?docx?import?Document from?docx.shared?import?RGBColor?#這個是docx的顏色類# 新建文檔 doc?=?Document()# 新增樣式(第一個參數是樣式名稱,第二個參數是樣式類型:1代表段落;2代表字符;3代表表格) style?=?doc.styles.add_style('style?name?1',?2)# 設置具體樣式(修改樣式字體為藍色,當然還可以修改其他的,大家自己嘗試) style.font.color.rgb?=?RGBColor(0x0,?0x0,?0xff)

6、應用字符樣式。字符自然是在段落里面的,可以采用下面方法給段落追加文字和設置字符樣式。

# 插入一個空白段落 p?=?doc.add_paragraph('')p.add_run('123',?style="Heading?1?Char")p.add_run('456')p.add_run('789',?style="Heading?2?Char")# 這樣一個段落就應用了兩個字符樣式,中間“456”就沒應用樣式 print?p.text??# 輸出結果是u'123456789'?也還是連續的

7、設置字體。當然可以不用通過設置樣式對某些字進行設置,也可以直接設置。

p?=?doc.add_paragraph('')r?=?p.add_run('123')r.font.bold?=?True????# 加粗r.font.italic?=?True??# 傾斜?等等...

8、表格操作。表格也是經常用到的一種對象類型。

# 新建一個2x3的表格,style可以不寫 table=doc.add_table(rows=2,cols=3,style=None)# 可以用table?的rows和columns得到這個表格的行數和列數 print?len(table.rows) print?len(table.columns)# 遍歷表格 for?row?in?table.rows:row.cells[0].text?=?'1'# print?row.cells[0].text# 新增行或列 table.add_row() table.add_column()

Word常見操作差不多就是這些。大家可以查看幫助文檔,也可以用dir和help查看對象的方法屬性和幫助。

總結

以上是生活随笔為你收集整理的Python:docx模块的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。