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程序设计有所帮助。