时间:2021-05-22
2个简单的代码,帮你实现word的导出和word的读取
功能一:导出word,word中的内容为
代码:
from docx import Documentfrom docx.enum.text import WD_PARAGRAPH_ALIGNMENT #设置对象居中、对齐等。from docx.enum.text import WD_TAB_ALIGNMENT,WD_TAB_LEADER #设置制表符等from docx.shared import Inches #设置图像大小from docx.shared import Pt #设置像素、缩进等from docx.shared import RGBColor #设置字体颜色from docx.shared import Length #设置宽度from docx.oxml.ns import qnimport timetoday=time.strftime("%Y{y}%m{m}%d{d}",time.localtime()).format(y="年",m="月",d="日")document=Document()document.styles["Normal"].font.name=u'宋体'# 设置文档的基础字体document.styles["Normal"].element.rPr.rFonts.set(qn('w:eastAsia'),u'宋体')#设置文档的基础中文字体#初始化建立第一个自然段p1=document.add_paragraph()p1.alignment=WD_PARAGRAPH_ALIGNMENT.CENTER#对齐方式为居中run1=p1.add_run("关于下达%s产品的通知"%today)run1.font.name="微软雅黑"run1.font.size=Pt(21) # 字体大小为21磅run1.font.bold=True #加粗p1.space_after=Pt(5)#段后距离5磅p1.space_before = Pt(5)# 段前距离5磅# 建立第一个自然段i='客户3'p2 = document.add_paragraph()run2 = p2.add_run("%s:" % i)run2.font.name = "仿宋_GB2312"run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')run2.font.size = Pt(16)run2.font.bold = True# 建立第一个自然段p3 = document.add_paragraph()run3 = p3.add_run(" 根据公司安排,为提供优质客户服务,我单位将价格通知如下:" )run3.font.name = "仿宋_GB2312"run3.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')run3.font.size = Pt(16)run3.font.bold = True# 建立表格table=document.add_table(rows=3,cols=3,style='Table Grid')table.cell(0,0).merge(table.cell(0,2))# 合并第一行table_run1=table.cell(0,0).paragraphs[0].add_run('XX产品报价表')# 合并单位格内填入XX产品报价表table_run1.font.name = u"隶书"table_run1.element.rPr.rFonts.set(qn('w:eastAsia'), u'隶书')table.cell(0, 0).paragraphs[0].alighment=WD_PARAGRAPH_ALIGNMENT.CENTER#居中table.cell(1, 0).text='日期'table.cell(1, 1).text = '价格'table.cell(1, 2).text = '备注'table.cell(2, 0).text = todaytable.cell(2, 1).text ='100'table.cell(2, 2).text = ''document.add_page_break()#分页符document.save('价格通知.docx')#保存需要说明的是
run3.font.name = "仿宋_GB2312"
run3.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
这两句均是设置字体为仿宋_GB2312,之所以要两种格式写两遍,是因为word对中文支持不太友好,需要再填一句
功能二:读取word,word中的内容为
读取表格外文字的代码:
from docx import Documentdocument=Document("长恨歌.docx")print("读取非表格中的内容:")all_paragraphs=document.paragraphsfor paragraph in all_paragraphs: print(paragraph.text)读取表格内文字的代码:
from docx import Documentdocument=Document("长恨歌.docx")print("读取表格中的内容:")tables=document.tablesfor i in range(len(tables)): tb=tables[i]#获取表格的行 tb_rows=tb.rows #读取每一行内容 for i in range(len(tb_rows)): row_data=[] row_cells=tb_rows[i].cells#读取每一行单元格内容 for cell in row_cells:#单元格内容 row_data.append(cell.text) print(''.join(row_data))以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Hibernate工作原理及为什么要用? 原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Sesssi
java读取resources文件详解及实现代码Java项目中,经常需要将资源文件打包放在项目中,然后在项目中去读取对应的文件。实现代码:Stringstr=R
整理文档,搜刮出一个Spring实现excel及pdf导出表格的代码,稍微整理精简一下做下分享。excel导出:packagelight.mvc.utils.e
本文实例讲述了PHP实现类似于C语言的文件读取及解析功能。分享给大家供大家参考,具体如下:$log_file_name='D:/static/develop/k
本文实例讲述了PHP将Excel导入数据库及数据库数据导出至Excel的方法。分享给大家供大家参考。具体实现方法如下:一.导入导入需要使用能读取Excel的组件