本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来;做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展成一个小说读音器。

1 pip install pyttsx3

这里我选择了pyttsx3工具,其实百度的语音接口很不错,不过有些麻烦,我们姑且忽略;先安装python的文字转语音的工具pyttsx3,来简单封装一个文字转语音的方法:

1 import pyttsx32

3 class ttsx(object):4 def __init__(self,rate=-10):5 self.rate =rate6

7 def sayText(self,str):8 self.engine =pyttsx3.init()9

10 #语速11 rate = self.engine.getProperty('rate')12 self.engine.setProperty('rate', rate +self.rate)13

14 #音量15 #volume = self.engine.getProperty('volume')16 #engine.setProperty('volume', volume - 0.25)17

18 #声音19 #voices = self.engine.getProperty('voices')20 #for voice invoices:21 # self.engine.setProperty('voice', voice.id)22 # print(voice.id)23

24 self.engine.say(str)25 self.engine.runAndWait()

这里采用系统默认的语音驱动,默认的语速过快,我们可以通过rate来设置下,然后可以通过调用说一句你想说的话,比如:

1 ttx =ttsx()2 ttx.sayText("我是神牛003,欢迎大家关注")

正常情况下,能够听到有电脑系统的语音,这里也没法演示;注意在语言播放的时候程序是阻塞的,self.engine.runAndWait()这句是关键;为了方便操作我加入了ui界面,先引用tkinter插件:

1 import tkinter2 from tkinter.constants import *

3 from tkinter import filedialog

这里初始化一个操作窗体并附加几个元素,图像界面有点low,如下:

图形窗体关键代码如下,或许不是很友好:

1 #初始化窗体2 def tkMain(self,title,h=500,w=300):3 self.tk =tkinter.Tk()4 self.tk.title(title)5 self.tk.minsize(h,w)6 self.tk.resizable(False,False)7

8 tkinter.Label(self.tk, text="文本路径:").grid(row=0, column=0)9

10 self.entryvar =tkinter.StringVar()11 entry = tkinter.Entry(self.tk,textvariable = self.entryvar,borderwidth=2,width=50)12 entry.grid(row=0, column=1)13

14 tkinter.Button(self.tk,text="选择",command=self.selectPath).grid(row=0, column=2)15 tkinter.Button(self.tk,text="开读",command=self.readTxt).grid(row=0, column=3)16

17 self.txt =tkinter.Text(self.tk)18 self.txt.grid(row=1,columnspan=4)19

20 self.tk.mainloop()

再者通过filedialog并增加一个按钮事件来达到选择电脑磁盘中的某个文件,并读取txt内容显示在文本框中:

1 #选择文件2 def selectPath(self):3 self.filename =filedialog.askopenfilename() # 打开文件夹对话框4 ifnot self.filename:5 return

6

7 self.entryvar.set(self.filename) # 设置变量entryvar,等同于设置部件Entry8 self.txt.delete(0.0,"end")9 #加入到界面txt10 with open(self.filename,'r') asf:11 whileTrue:12 line =f.readline()13 if(line):14 self.txt.insert('insert',line)15 else:16 break

最后开读按钮事件只需要获取到文本框中内容,并调用读音方法就行了:

1 #读取txt中文本2 def readTxt(self):3 strTxt = self.txt.get(0.0,"end")4 self.sayText(strTxt)

原文出处:https://www.cnblogs.com/wangrudong003/p/10161502.html

python读音发音器-python3 - 文本读音器相关推荐

  1. python读音发音-python3 - 文本读音器

    本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来:做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展 ...

  2. python中文读音-python3 - 文本读音器

    本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来:做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展 ...

  3. python文本发音_python3 - 文本读音器

    本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来:做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展 ...

  4. python读音发音器-python3-文本读音器

    本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来:做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展 ...

  5. python得读音_python3 - 文本读音器

    本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来:做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展 ...

  6. Python 文本解析器

    一.实验介绍 1.1 实验内容 讲解一个使用 Python 来解析纯文本生成一个 HTML 页面的小程序. 将学习和实践以下知识点: Python 基本语法 HTML 标记语言 1.2 实验知识点 P ...

  7. python密码破解工具_一个最简单的博客园文章密码暴力破解器-python3实现

    一个最简单的博客园文章密码暴力破解器-python3实现 我之前想写路由器的密码暴力破解器,我手上只有极路由,发现极路由有安全限制,只能允许连续10密码错误,所以我改拿博客园练手. 博客园的博客有个功 ...

  8. Python 实现文本解析器

    Python 实现文本解析器 一. 内容介绍 本节实验我们学习使用 Python 来解析纯文本文件,并生成 HTML 页面.本节实验只是一个简单实现,支持了较少部分的 Markdown 语法,但通过实 ...

  9. python 贝叶斯分类器sklearn_使用sklearn自带的贝叶斯分类器进行文本分类和参数调优...

    数据挖掘入门与实战 公众号: datadw Part 1: 本篇内容简介 在前一篇文章完整手写一个朴素贝叶斯分类器,完成文本分类,我们使用首先假设在文档中出现的单词彼此独立,利用贝叶斯定理,完成了一个 ...

最新文章

  1. ASP.NET MVC使用Bootstrap系列(3)——使用Bootstrap 组件
  2. 类欧几里得(模板题推导)
  3. 猎取人心的36条黄金法则
  4. PHP 正在干掉 Python
  5. dp------最长公共子序列问题
  6. Facebook开发地面技术扩大互联网连接
  7. oracle实施伙伴,甲骨文推出Oracle合作伙伴网络专属计划
  8. 嵌入式系统应用开发—FPGA开发板—一位全加器仿真测试
  9. ac1900 linksys 恢复_linksys思科WRT1900ACS刷机变砖维修
  10. Centos7使用docke搭建openV
  11. 电子学会机器人等级考试三四级考试大纲
  12. 解决esp8266无法连接手机和电脑热点的问题
  13. 基于Python的SAP流程自动化
  14. 《Python编程:从入门到实践》练习16-2:比较锡特卡和死亡谷的温度
  15. 最短路径-弗洛伊德算法的java实现
  16. 从一个简单的SQL来聊聊等价改写
  17. 3D Max合并两个.max文件
  18. uni-app 动画
  19. 四平方和定理(拉格朗日定理)
  20. 场效应晶体管在电路中的五大作用,你了解哪一种?

热门文章

  1. POJ 1321 棋盘问题 搜索
  2. Unity 官方自带的例子笔记 - Space Shooter
  3. WS-Eventing、WS-Transfer Web服务标准
  4. Jzoj3907 蜀传之单刀赴会(梦回三国系列)
  5. oracle数据库函数/存储过程/包区别
  6. python学习笔记(装饰器、迭代器生成器、内置函数、软件目录开发规范)
  7. 设计模式-2-代理模式
  8. 基于AFNetworking的多张图片上传
  9. jquery 向上滚动【四】个人认为好一些,哈
  10. python自学需要哪些基础知识-零基础学Python应该学习哪些入门知识及学习步骤安排...