快速入门
打开文档
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
属性.Row
和Column
上的.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"