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

打開APP
userphoto
未登錄

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

開通VIP
Python對word文檔進行操作

Python-docx

Python-docx是專門針對于word文檔的一個模塊,只能操作docx 不能讀取doc文件。在這里python-docx主要的功能是對docx文件進行操作,管理等。

官方文檔:https://python-docx.readthedocs.io/en/latest/index.html

安裝Python-docx

pip install python-docx

編輯word文檔

導入Document模塊

從 docx模塊中,導入Document類,并實例化生成一個Document對象,通過它對word文檔進行操作。

from docx import Document

Doc = Document()

添加標題

Doc.add_heading("使用Python操作word文檔")

Doc.add_heading("添加標題2",level=2)

Doc.add_heading("添加標題3",level=3)

添加段落(paragraph)

這里paragraph指的就是一個段落的意思

Doc.add_paragraph("Python是一種面向對象的編程語言")

Doc.add_paragraph("Python可以操作word文檔")

Doc.add_paragraph("看看操作的結果吧")

插入圖片

doc.add_picture('./images/img1.jpg', width=Inches(5),height=Inches(3))

插入表格

# 插入表格

table = doc.add_table(rows=1, cols=3)  # 插入表格

table.style ='Table Grid'

#設置列寬

table.cell(0,0).width=Cm(20)

table.cell(0,1).width=Cm(15)

table.cell(0,2).width=Cm(15)

#設置整個表格字體屬性

table.style.font.size=Pt(10)

table.style.font.color.rgb=RGBColor(255, 0, 0)

table.style.paragraph_format.alignment=WD_PARAGRAPH_ALIGNMENT.CENTER

hdr_cells = table.rows[0].cells

#hdr_cells[0].text = '名稱'

hdr_cells[1].text = '品牌'

hdr_cells[2].text = '價格'

#單個單元格設置

cell=table.cell(0,0)

p=cell.paragraphs[0]

run = p.add_run("名稱")

run.font.color.rgb = RGBColor(0, 0, 255) # 顏色設置,這里是用RGB顏色

run.font.size = Pt(12) # 字體大小設置,和word里面的字號相對應

#設置水平對齊方式(LEFT,RIGHT,CENTER

p.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER

#設置垂直對齊方式(TOP,BOTTOM,CENTER

cell.vertical_alignment = WD_CELL_VERTICAL_ALIGNMENT.CENTER

ls = [

    ["秋梨潤肺膏", "同仁堂", "32.00"],

    ["夏桑菊顆粒", "白云山", "19.90"],

    ["急支糖漿", "太極", "26.80"],

    ["蟲草清肺膠囊", "同濟堂", "88.00"],

    ["布洛芬緩釋膠囊", "芬必得", "30.20"],

    ["小兒氨酚烷胺顆粒", "葵花藥業", "15.20"]

]

for item in ls:

     row_cells = table.add_row().cells

     row_cells[0].text = item[0]

     row_cells[1].text = item[1]

     row_cells[2].text = item[2]

邊框樣式

table_style = 'Normal Table'  #無線框表格

單元格對齊

在對單元格對齊方式設置的時候,將單元格視為一個整體,要使用單元格中的垂直對齊(cell.vertical_alignment)和單元格中的段落的對齊(paragraph.alignment)等2種對齊方式配合使用。

在docx.enum.table.WD_ALIGN_VERTICAL定義了TOP、CENTER和BOTTOM等3種類型,含義如下:

from docx.enum.table import WD_CELL_VERTICAL_ALIGNMENT

WD_CELL_VERTICAL_ALIGNMENT.TOP:單元格內容靠上對齊

WD_CELL_VERTICAL_ALIGNMENT.CENTER:單元格內容居中對齊

WD_CELL_VERTICAL_ALIGNMENT.BOTTOM:單元格內容靠下對齊

在WD_PARAGRAPH_ALIGNMENT中定義了4中類型,分別是LEFT、CENTER、RIGHT和JUSTIFY等4中類型,含義如下:

from docx.enum.text import WD_PARAGRAPH_ALIGNMENT # 導入段落對齊

WD_PARAGRAPH_ALIGNMENT.LEFT:段落左對齊

WD_PARAGRAPH_ALIGNMENT.CENTER:段落居中對齊

WD_PARAGRAPH_ALIGNMENT.RIGHT:段落右對齊

WD_PARAGRAPH_ALIGNMENT.JUSTIFY:段落兩端對齊

合并單元格

cell_1=table.cell(1, 0)

cell_2=table.cell(2, 1)

cell_1.merge(cell_2)

保存word文檔

Doc.save("Python_word.docx")

讀取word文檔

from docx import Document

doc = Document('./data/Python_word.docx')

#輸出每一段的內容

for para in doc.paragraphs:

    print(para.text)

說明:

doc.paragraphs:獲取段落對象列表

編輯已有的word文檔

如果是想讀取其中的圖片或是更復雜地編輯,首先需要先來認識下docx文檔的格式組成:

docx是Microsoft Office2007之后版本使用的,用新的基于XML的壓縮文件格式取代了其專有的默認文件格式,在傳統的文件名擴展名后面添加了字母“x”(即“.docx”取代“.doc”、“.xlsx”取代“.xls”、“.pptx”取代“.ppt”)。

docx格式的文件本質上是一個ZIP文件。將一個docx文件的后綴改為ZIP后是可以用解壓工具打開或是解壓的。事實上,Word2007的基本文件就是ZIP格式的,他可以算作是docx文件的容器。

docx 格式文件的主要內容是保存為XML格式的,但文件并非直接保存于磁盤。它是保存在一個ZIP文件中,然后取擴展名為docx。將.docx 格式的文件后綴改為ZIP后解壓, 可以看到解壓出來的文件夾中有word這樣一個文件夾,它包含了Word文檔的大部分內容。而其中的document.xml文件則包含了文檔的主要文本內容。

word目錄下:

document.xml文件內容:

所以,我們可以使用手工的方法編輯文件document.xml來對該word文檔內容進行編輯,或是提取文檔media中圖片文件的方式來提取該word文檔中所插入的所有圖片。

import zipfile

f=zipfile.ZipFile('./data/Python_word.docx','r')

for filename in f.namelist(): 

    print(filename)

    f.extract(filename)

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
python操作word表格格式
利用python實現字音回填
第105天: Python 操作 Word
使用python操作word
實例7:用Python操作Word批量生成合同
Python操縱Word神器
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 绥中县| 永泰县| 乾安县| 五指山市| 香港| 惠州市| 常州市| 修武县| 会宁县| 景德镇市| 潢川县| 舒兰市| 柘城县| 锦屏县| 大石桥市| 桦川县| 淮阳县| 寿光市| 平顶山市| 瑞金市| 汨罗市| 比如县| 从江县| 桃江县| 仁寿县| 南雄市| 冷水江市| 宜春市| 奉新县| 原平市| 敦煌市| 云林县| 尼勒克县| 山东| 鹤庆县| 宜城市| 方正县| 焉耆| 永春县| 宿迁市| 西藏|