python操作docx写入内容,并控制文本的字体颜色_python

来源:脚本之家  责任编辑:小易  

准备我测试使用的Python版本为2.7.10,如果你的版本是Python3.5的话,这里就不太适合了。使用Speech API原理我们的想法是借助微软的语音接口,所以我们肯定是要进行调用 相关的接口。所以我们需要安装pywin32来帮助我们完成这一个底层的交互。示例代码import win32com.clientspeaker = win32com.client.Dispatch("SAPI.SpVoice")speaker.Speak("Hello,it works!小总结是的,调用接口来实现语音功能就是这么简单,但是我们不得不来聊一聊这种方式的缺点。对中文支持的不够好,仅仅是这一点,估计在中国没几个用它的了。还有就是语速不能很好的控制pyttsx方式原理pyttsx 是Python的一个关于文字转语音方面的很不错的库。我们还可以借助pyttsx来实现在线朗读rfc文件或者本地文件等等,最为关键的是,它对中文支持的还是不错的。示例代码coding:utf-8import sysreload(sys)sys.setdefaultencoding('utf8')#_author_='郭 璞'#_date_='2016/8/6'#_Desc_=文字转语音输出import pyttsxengine=pyttsx.init()engine.say('hello world')engine.say('你好,郭璞')engine.runAndWait()#朗读一次engine.endLoop()小总结使用pyttsx,我们可以借助其强大的API来实现我们基本的业务需求。很酷吧。pyttsx深入研究做完上面的小实验,你肯定会觉得怎么这么不过瘾呢?别担心,下面我们就一起走进pyttsx的世界,深入的研究一下其工作原理吧。语音引擎工厂类似于设计模式中的“工厂模式”,pyttsx通过初始化来获取语音引擎。当我们第一次调用init操作的时候,会返回一个pyttsx的engine对象,再次调用的时候,如果存在engine对象实例,就会使用现有的,否则再重新创建一个。pyttsx.init([driverName:string,debug:bool])→pyttsx.Engine从方法声明上来看,第一个参数指定的是语音驱动的名称,这个在底层适合操作系统密切相关的。如下:1.drivename:由pyttsx.driver模块根据操作系统类型来调用,默认使用当前操作系统可以使用的最好的驱动sapi5-SAPI5 on Windowsnsss-NSSpeechSynthesizer on Mac OS Xespeak-eSpeak on every other platform2.debug:这第二个参数是指定要不要以调试状态输出,建议开发阶段设置为True引擎接口要想很好的运用一个库,不了解其API是不行的。下面来看看pyttsx。engine.Engine的引擎API。方法签名 参数列表 返回值 简单释义connect(topic:string,cb:callable)topic:要描述的事件名称;cb:回调函数→dict 在给定的topic上添加回调通知disconnect(token:dict)token:回调失联的返回标记 Void 结束连接endLoop()None→None 简单来说就是结束事件循环getProperty(name:string)name有这些枚举值“rate,vioce,vioces,volumn→object 获取当前引擎实例的属性值setProperty(name:string)name有这些枚举值“rate,vioce,vioces,volumn→object 设置当前引擎实例的属性值say(text:unicode,name:string)text:要进行朗读的文本数据;name:关联发音人,一般用不到→None 预设要朗读的文本数据,这也是“万事俱备,只欠东风”中的“万事俱备”runAndWait()None→None 这个方法就是“东风”了。当事件队列中事件全部清空的时候返回startLoop([useDriverLoop:bool])useDriverLoop:是否启用驱动循环→None 开启事件队列元数据音调在pyttsx.voice.Voice中,处理合成器的发音。age发音人的年龄,默认为Nonegender以字符串为类型的发音人性别:male,female,or neutral.默认为Noneid关于Voice的字符串确认信息.通过 pyttsx.engine.Engine.setPropertyValue()来设置活动发音签名.这个属性总是被定义。languages发音支持的语言列表,如果没有,则为一个空的列表。name发音人名称,默认为None.更多测试朗读文本import pyttsxengine=pyttsx.init()engine.say('Sally sells seashells by the seashore.')engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()事件监听import pyttsxdef onStart(name):print 'starting',namedef onWord(name,location,length):print 'word',name,location,lengthdef onEnd(name,completed):print 'finishing',name,completedengine=pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()打断发音import pyttsxdef onWord(name,location,length):print 'word',name,location,length if location>10:engine.stop()engine=pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()更换发音人声音engine=pyttsx.init()voices=engine.getProperty('voices')for voice in voices:engine.setProperty('voice',voice.id)engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()语速控制engine=pyttsx.init()rate=engine.getProperty('rate')engine.setProperty('rate',rate+50)engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()音量控制engine=pyttsx.init()volume=engine.getProperty('volume')engine.setProperty('volume',volume-0.25)engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()执行一个事件驱动循环engine=pyttsx.init()def onStart(name):print 'starting',namedef onWord(name,location,length):print 'word',name,location,lengthdef onEnd(name,completed):print 'finishing',name,completed if name='fox':engine.say('What a lazy dog!','dog')elif name='dog':engine.endLoop()engine=pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.','fox')engine.startLoop()使用一个外部的驱动循环engine=pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.','fox')engin(www.alOnely.Com.Cn)e.startLoop(False)#engine.iterate()must be called inside externalLoop()externalLoop()engine.endLoop()总结以上就是Python如何实现文本转语音的全部内容,看完了上面的讲述,是不是感觉Python实现文本转语音还是蛮简单的?那么,大家快来尝试尝试吧。希望本文对大家学习Python有所帮助www.zgxue.com防采集请勿采集本网。

功能:读取txt文本,然后将目的字符串标红,再将处理过的字符串写入docx中

#确保安百装了度知python-docx包 from docx import Document as Doc docu=Doc(input('path:')) file='' for i in docu.paragraphs: file+i.text f=open(input('new path:'),'w',encoding='utf-8')

txt文本内容:啊打发发烧鳌太路线点击点击诶的骄傲

情况来调整呢?

计划将鳌太标红

把编码改成utf8就可以了 coding:utf-8-*- import sys reload(sys) sys.setdefaultencoding('utf8') document.add_heading(u'标题1',level=1) document.add_paragraph(u'中文测试',style='

代码:

docx文件的结构分为三层,1、Docment对象表示整个文档;2、Docment包含了Paragraph对象的列表,每个Paragraph对象用来表示文档中的一个段落;3、一个Paragraph对象包含Run对象作者:Python_小屋

f = open('D:\\test\\路线.txt', 'r')content = f.read()print(content)#此方法在切分字符时可以保留切分符pt = r'(鳌太)'res = re.split(pt, content)print(res[0])document = Document()p = document.add_paragraph(res[0])#add_run在同一段添加内容run = p.add_run(res[1])#字体颜色run.font.color.rgb = RGBColor(250,0,0)p.add_run(res[2])document.save('D:\\test\\路线.docx')

1、word表格样式的设置 from docx import* document=Document() table=document.add_table(3,3,style=\"Medium Grid 1 Accent 1\") heading_cells=table.rows[0].cells heading_cells[0].text='第

写入docx的文本:

啊打发发烧鳌太路线点击点击诶的骄傲

以上这篇python操作docx写入内容,并控制文本的字体颜色就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持真格学网。

from docx import Documentwb=Document(r"C:\\Users\\Robin\\Desktop\\TEST.docx")for x in wb.paragraphs:x.text=x.text.replace('ABC','DEF')wb.save(r"C:\\Users\\Robin\\Desktop\\TEST_out.docx")内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • python+opencv3生成一个自定义纯色图教程
  • python实现简单颜色识别程序
  • wxpython修改文本框颜色过程解析
  • python终端输出彩色字符方法详解
  • 基于python3.6中的opencv实现图片色彩空间的转换
  • python+opencv+图片旋转并用原底色填充新四角的例子
  • python通过2种方法输出带颜色字体
  • 用python将mysql数据导出成json的方法
  • python实现的字典值比较功能示例
  • 利用python库在局域网内传输文件的方法
  • python3实现对列表按元组指定列进行排序的方法分析
  • python机器学习库scikit-learn:svr的基本应用
  • python3编码问题汇总
  • 总结网络io模型与select模型的python实例讲解
  • pytorch cnn 识别手写的字实现自建图片数据
  • python使用configparser库读取配置文件
  • centos部署django服务nginx+uwsgi的方法
  • 如何用python-docx替换一个docx文本中的指定字符
  • 实现python文本写入word
  • python如何读取word文件中的文本内容并写入到新的txt文件?
  • python-docx官方文档中文
  • python如何读取word文件中的文本内容并写入到新的txt文件?
  • 使用python-docx 如何向word中插入文件对象
  • python输出word文档用docx怎样支持中文?有没有更好的解决方案
  • python创建docx时怎么设置页面布局
  • python-docx怎么给表格自定义样式
  • python输出word文档用docx怎样支持中文?有没有更好的解决方案
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全vbsdos/bathtahtcpythonperl游戏相关vba远程脚本coldfusionruby专题autoitseraphzonepowershelllinux shellluagolangerlang其它首页pythonpython+opencv3生成一个自定义纯色图教程python实现简单颜色识别程序wxpython修改文本框颜色过程解析python终端输出彩色字符方法详解基于python3.6中的opencv实现图片色彩空间的转换python+opencv+图片旋转并用原底色填充新四角的例子python通过2种方法输出带颜色字体用python将mysql数据导出成json的方法python实现的字典值比较功能示例利用python库在局域网内传输文件的方法python3实现对列表按元组指定列进行排序的方法分析python机器学习库scikit-learn:svr的基本应用python3编码问题汇总总结网络io模型与select模型的python实例讲解pytorch cnn 识别手写的字实现自建图片数据python使用configparser库读取配置文件centos部署django服务nginx+uwsgi的方法python入门教程 超详细1小时学会python 列表(list)操作方法详解python 元组(tuple)操作详解python 字典(dictionary)操作详解pycharm 使用心得(一)安装和首python strip()函数 介绍python 中文乱码问题深入分析python科学计算环境推荐——anacpython逐行读取文件内容的三种方python中使用xlrd、xlwt操作excepython循环语句之break与continue的用法python获取系统默认字符编码的方法mysqldb importerror: libmysqlclient.sopython3 使用selenium插件爬取苏宁商家联python2.x中文乱码问题解决方法python pyqt4实现qq抽屉效果python3实现的简单验证码识别功能示例python首次安装后运行报错(0xc000007b)的使用 python 处理3万多条数据只要几秒钟win10环境python3.7安装dlib模块趟过的坑
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved