精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码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功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 淮北市| 抚远县| 昌宁县| 尉犁县| 铜川市| 武清区| 社旗县| 界首市| 兴化市| 巫溪县| 满洲里市| 赫章县| 龙岩市| 油尖旺区| 青阳县| 曲靖市| 辉县市| 盈江县| 运城市| 漳浦县| 万载县| 清丰县| 保山市| 高要市| 潞西市| 潢川县| 逊克县| 山西省| 子长县| 秀山| 陇西县| 扎赉特旗| 堆龙德庆县| 溧阳市| 彩票| 房产| 商洛市| 九江市| 清徐县| 广东省| 盖州市|