精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
用python解析word文件(三):style
太長了,我決定還是拆開三篇寫。

(二)表格篇(table)

(三)樣式篇(style)(本篇)

選你所需即可。下面開始正文。


在前兩篇中,我們已經解析出了paragraph和table,那么,如何把它們按順序組合在一起呢?畢竟,一般的word不會固定把表格和文字分開,而是混排在一起的。
答案是,沒辦法。
可能有的同學在看過前兩篇之后,已經親自動手去玩python-docx,并且發現了style這個東西。我本來也發現了。使用
docx.styles
可以獲取全部的樣式,并且用
style.type
可以看出,它屬于paragraph還是table。那么,如果我這樣……

for s in docx.styles: 

    if s.type == WD_STYLE_TYPE.PARAGRAPH:

        print(s.text) 

    elif s.type == WD_STYLE_TYPE.TABLE: 

        for row in s.rows: 

            for cell in row.cells: 

            print(cell.text)

不就可以按順序獲得所有段落和表格了嗎?如果你親自做過了,你就會發現行不通。通過循環獲得的內容,跟word里的前后順序不一樣,鬼知道這個style是按什么順序添加上的!
不過,對于單獨的paragraph或table來說,style還是很有用的。用來判斷當前段落或單元格的樣式,我用到的屬性主要就是type和name這兩個——好吧,還是type用的最多。
paragraph.style.type或p.runs[i].style.type是個枚舉類型的常量,在庫中的主要位置為docx.enum.____,從本系列文章的第一篇可以看到大概的用法,如果要比較細致地展示word文檔的樣式,style還是比較重要的。尤其是,如果我們把程序設計為直接寫word而不是讀的時候,更體現出style的重要性。比較典型的例子就是,如果頁面上有富文本編輯器,或者markdown格式編輯器,后臺想要導出word的時候,肯定要用到style。
當然,對于設計者來說是非常爽的,但是對于后端程序員來說,還是挺苦逼的。枚舉類型沒有什么技巧可言,完全就是苦力活。

關于如何解析word,我就介紹這么多了。這一篇寫得比較短,因為style我總共也沒有用上幾種,就只能寫點理論知識;二是style本來也難以獨立成篇,我只是想吐槽一下當時走的彎路。 
本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
用Python讀寫word文檔
用 python 來操作 docx, xlsx 格式文件(二)(使用 docx 庫操作 docx 格式文件
python編程操作office三劍客之word篇
Python|利用第三方庫編輯word的基本操作
使用python-docx模塊讀寫word文件
Python-docx 讀取word.docx內容
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 洛隆县| 钦州市| 洪泽县| 西青区| 衢州市| 米脂县| 博乐市| 江津市| 南阳市| 泽州县| 亳州市| 新邵县| 武陟县| 商都县| 莆田市| 梁山县| 德清县| 偏关县| 屏东县| 西畴县| 陆川县| 浦东新区| 四子王旗| 大兴区| 凤庆县| 建始县| 巴林左旗| 东源县| 宝清县| 哈巴河县| 稻城县| 漳平市| 东光县| 丹巴县| 巢湖市| 台湾省| 宾阳县| 牙克石市| 东莞市| 疏勒县| 郓城县|