230901快速入门docx

快速入门

打开文档

from docx import Document
document = Document()

添加段落

paragraph = document.add_paragraph("Lorem ipsum dolor sit amet.")

返回在文档末尾添加的新段落的引用.
可用段落为标记,在其正上方插入新段落:

prior_paragraph = paragraph.insert_paragraph_before("Lorem ipsum")

修改文档时很重要.

添加标题

一般正文都分划分多个,每个节都以标题开头.

document.add_heading("The REAL meaning of the universe")

默认,这添加一个顶级标题,在Word中显示为"标题1".想要子节标题时,只需指定为1到9之间的整数:

document.add_heading("The role of dolphins", level=2)

如果级别为0,则会添加"标题"段落.

添加分页符

文本放在单独页上.

document.add_page_break()

可设置段落风格属性为:在有该风格每个段落前立即分页.
因此,可设置某个级别标题为总是开始新页.

添加表

table = document.add_table(rows=2, cols=2)

访问单元格:

cell = table.cell(0, 1)
cell.text = "parrot, possibly dead"

一般,一次访问一行单元格
cells属性.RowColumn上的.cells属性都支持索引访问,如列表:

row = table.rows[1]
row.cells[0].text = "Foo bar to you."
row.cells[1].text = "And a hearty foo bar to you too sir!"

.rows.columns集合是可迭代的,因此可直接在for循环中使用它们.与行或列上的.cells序列相同:

for row in table.rows:
    for cell in row.cells:
        print(cell.text)

如果想要表中行或列计数,使用len():

row_count = len(table.rows)
col_count = len(table.columns)

还可按增量向表中添加行,如下:

row = table.add_row()

对可变长度表非常方便:

#取数据
items = (
    (7, "1024", "Plush kittens"),
    (3, "2042", "Furbees"),
    (1, "1288", "French Poodle Collars, Deluxe"),
)
# 加表
table = document.add_table(1, 3)
# 填充标题
heading_cells = table.rows[0].cells
heading_cells[0].text = "Qty"
heading_cells[1].text = "SKU"
heading_cells[2].text = "Description"
# 加数据行
for item in items:
    cells = table.add_row().cells
    cells[0].text = str(item.qty)
    cells[1].text = item.sku
    cells[2].text = item.desc

Word有组预先格式化的表格风格:

table.style = "LightShading-Accent1"

添加图片

document.add_picture("image-filename.png")

图像大小

默认,按本地大小显示添加图像.一般比想要的要大.
要获得期望图像大小,可用(如英寸或厘米)指定其宽度或高度:

from docx.shared import Inches
document.add_picture("image-filename.png", width=Inches(1.0))

应用段落风格

很像CSS,
可在创建段落时直接应用段落风格:

document.add_paragraph("Lorem ipsum dolor sit amet.", style="ListBullet")

等价于:

 paragraph=document.add_paragraph("Loremipsumdolorsitamet.")
 paragraph.style="ListBullet"

应用粗体和斜体

段落包含所有如缩进,行高,制表符块级格式.

paragraph = document.add_paragraph("Lorem ipsum ")
paragraph.add_run("dolor sit amet.")

置块:

paragraph = document.add_paragraph("Lorem ipsum ")
run = paragraph.add_run("dolor")
run.bold = True
paragraph.add_run(" sit amet.")

如下:

paragraph.add_run("dolor").bold = True
#==
run = paragraph.add_run("dolor")
run.bold = True

应用符风格

paragraph = document.add_paragraph("Normal text, ")
paragraph.add_run("text with emphasis.", "Emphasis")
//==
paragraph = document.add_paragraph("Normal text, ")
run = paragraph.add_run("text with emphasis.")
run.style = "Emphasis"

猜你喜欢

转载自blog.csdn.net/fqbqrr/article/details/132679041