python实现生成Word、docx文件的方法分析
本文实例讲述了python实现生成Word、docx文件的方法。分享给大家供大家参考,具体如下:
http://python-docx.readthedocs.io/en/latest/index.html
生成word的利器!
一、快速开始
fromdocximportDocument document=Document()
1、段落
加一个段落,下面paragraph是前面内容的光标指向,后面再该处插入一句话。
paragraph=document.add_paragraph('Loremipsumdolorsitamet.')
prior_paragraph=paragraph.insert_paragraph_before('Loremipsum')
后面加一句话
paragraph=document.add_paragraph('Loremipsum')
paragraph.add_run('dolorsitamet.')
添加段落风格
document.add_paragraph('Loremipsumdolorsitamet.',style='ListBullet')
使用blod、italic等等
paragraph=document.add_paragraph('Loremipsum')
run=paragraph.add_run('dolor')
run.bold=True
run.italic=True
paragraph.add_run('dolor').bold=True
2、标题
level表示标题的大小
document.add_heading('Theroleofdolphins',level=2)
3、分页
document.add_page_break()
4、表格
table=document.add_table(rows=2,cols=2)
访问方法:
取出来,单独赋值
cell=table.cell(0,1) cell.text='parrot,possiblydead'
依然使用二维数组类似的索引。
row=table.rows[1] row.cells[0].text='Foobartoyou.' row.cells[1].text='Andaheartyfoobartoyoutoosir!'
分清楚结构
forrowintable.rows: forcellinrow.cells: print(cell.text)
查看信息
row_count=len(table.rows) col_count=len(table.columns)
添加一行
row=table.add_row()
动态添加表格
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' #添加内容 foriteminitems: cells=table.add_row().cells cells[0].text=str(item.column1) cells[1].text=item.column2 cells[2].text=item.column3
5、添加图片
fromdocx.sharedimportInches
document.add_picture('image-filename.png',width=Inches(1.25),height=Inches(1.25))
二、操作document
只能打开07之后的,会覆盖。
document=Document('existing-document-file.docx')
document.save('new-file-name.docx')
打开文件
f=open('foobar.docx','rb')
document=Document(f)
f.close()
#or
withopen('foobar.docx','rb')asf:
source_stream=StringIO(f.read())
document=Document(source_stream)
source_stream.close()
...
target_stream=StringIO()
document.save(target_stream)
三、操作text
段落居中
fromdocx.enum.textimportWD_ALIGN_PARAGRAPH document=Document() paragraph=document.add_paragraph() paragraph_format=paragraph.paragraph_format paragraph_format.alignment=WD_ALIGN_PARAGRAPH.CENTER
左边整体缩进
fromdocx.sharedimportInches paragraph=document.add_paragraph() paragraph_format=paragraph.paragraph_format paragraph_format.left_indent=Inches(0.5)
右边整体缩进
fromdocx.sharedimportPt paragraph_format.right_indent=Pt(24)
首行缩进
paragraph_format.first_line_indent=Inches(-0.25)
从字体调节,字体大小
run=document.add_paragraph().add_run() font=run.font fromdocx.sharedimportPt font.size=Pt(10.5)#5号字体 font.italic=True font.underline=True
字体颜色
fromdocx.sharedimportRGBColor font.color.rgb=RGBColor(0x42,0x24,0xE9)
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
