python speech模块的使用方法

python中我们可以使用speech模块让计算机进行语音输出,我们需要使用如下代码安装该模块。对于如何在终端中安装python相应模块,
Pycharm编译器可以使用Win + R进入运行界面,输入cmd并点击确定进入终端
Anaconda编译器可以打开Anaconda Powershell Prompt (anaconda),使用conda activate (虚拟环境名)进入终端,接下来在终端中使用如下安装命令即可:

pip install speech

然而因为speech模块最早是在python 2.x中开发的,因此在python 3.x中并不能够直接使用,我们需要打开它安装后的原始文件,并进行以下调整即可。
打开原始文件的简洁方法:可以直接在编译器中导入模块,运行报错后点击错误信息直接进入对应的位置。如下图所示:

当我安装好以后第一次运行speech模块后,出现了上述错误提醒,接着直接点击File所在的那一行就可以进入错误所对应的位置,即speech源文件需要更改的位置。若不使用此方法,就需要进入C:\Softwares\anaconda\envs\nano\Lib\site-packages目录下找到speech.py打开后进行定位错误位置并更改,Anaconda中每个人的文件位置可能有差异。因为虚拟环境的创建一般不同,Pycharm中一般是相同的,可以自行查找。

接着我们按部就班地更改以下三个位置地源文件。

  • 原始文件第157行,print prompt应该改为print(prompt)
  • 原始文件第59行,thread应该改为threading
  • 拖动文件到最后,将最后的部分改为:
class T(threading.Thread):
 def __init__(self):
  threading.Thread.__init__(self)

 def run(self):
   pass

 def _ensure_event_thread():
  """
  Make sure the eventthread is running, which checks the handlerqueue
  for new eventhandlers to create, and runs the message pump.
  """
  global _eventthread
  if not _eventthread:
   def loop():
    while _eventthread:
     pythoncom.PumpWaitingMessages()
     if _handlerqueue:
      (context,listener,callback) = _handlerqueue.pop()
      # Just creating a _ListenerCallback object makes events
      # fire till listener loses reference to its grammar object
      _ListenerCallback(context, listener, callback)
     time.sleep(.5)
   _eventthread = T()
   _eventthread.start()

然后我们输入以下测试代码:

import speech
class Debug:
 def __init__(self):
  speech.say("Hallo")

main = Debug()

当我们第一次运行这段调试程序时,windows 10会弹出一个语音设置输入窗口,我们只需要根据自己喜欢的设定方式设定即可(这里不做讨论)。接下来我们发现,speech模块就可以正常使用了。但是有一个问题,当使用speech.say()进行语音输出的时候,语言必须与windows 10的系统默认语言保持一致,否则无法识别,这里我的系统语言为德语,所以我使用了hallo输出,但是当我想要使用汉语作为语音输出时就会失败。那么如果想要使用其他语言怎么办呢?将windows 10的系统默认语言更改即可,只需要下载一个语言包并安装,可以自行百度,有很多,这里不做详细说明。

最后再次运行调试程序,成功获取到了对应的语音输出。

总结

到此这篇关于python speech模块的使用方法的文章就介绍到这了,更多相关python speech模块使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python3安装speech语音模块的方法

    在windows平台上使用pyhton编写语音识别程序需要用到speech模块,speech模块支持的主要功能有:文本合成语音,将键盘输入的文本信息转换为语音信号方式输出:语音识别,将输入的语音信号转为文本等功能 1.安装pywin32,pywin32即Python for Windows Extensions,提供了Pyhton访问和调用Windows底层功能函数的接口,pywin32包括了win32api.win32com.win32gui.win32process等模块,下载地址:http

  • python speech模块的使用方法

    在python中我们可以使用speech模块让计算机进行语音输出,我们需要使用如下代码安装该模块.对于如何在终端中安装python相应模块, Pycharm编译器可以使用Win + R进入运行界面,输入cmd并点击确定进入终端 Anaconda编译器可以打开Anaconda Powershell Prompt (anaconda),使用conda activate (虚拟环境名)进入终端,接下来在终端中使用如下安装命令即可: pip install speech 然而因为speech模块最早是在

  • python添加模块搜索路径方法

    1.函数添加 import sys sys.path sys.path.append("c:\\") 2.修改pythonpath(试不通) windows:PYTHONPATH 3.增加.pth文件(可以) site-packages或者python安装目录添加 xx.pth,文件内容为模块目录. linux(ubuntu)    /usr/local/lib/python2.7/dist-packages linux(redhat)    /usr/lib/python2.7/si

  • Python 常用模块 re 使用方法详解

    一.re模块的查找方法: 1.findall   匹配所有每一项都是列表中的一个元素 import re ret = re.findall('\d+','asd鲁班七号21313') # 正则表达式,待匹配的字符串,flag # ret = re.findall('\d','asd鲁班七号21313') # 正则表达式,待匹配的字符串,flag # print(ret) 2.search 只匹配从左到右的第一个,等到的不是直接的结果,而是一个变量,通过这个变量的group方法来获取结果 impo

  • python日志模块logbook使用方法

    python自带了日志模块logging,可以用来记录程序运行过程中的日志信息.同时python还有logbook模块用来取代logging模块,在很多的项目中logbook模块使用也是比较的多,因此本文介绍一下python logbook模块的使用方法. 1,安装 pip install logbook 官方的使用文档,这里 2,使用方法如下: 文件 logconf.py 初始化日志以及设置日志格式等参数: import sys import os import logbook import

  • python随机模块random使用方法详解

    random随机模块包括返回随机数的函数,可以用于模拟或者任何产生随机输出的程序. 一.random模块常用函数介绍 random.random() - 生成一个从0.0(包含)到 1.0(不包含)之间的随机浮点数: random.uniform(a, b) - 生成一个范围为 a≤N≤b 的随机数,随机数类型是浮点数: random.randint(a, b) - 生成一个范围为 a≤N≤b 的随机数,随机数的类型是整形,注意与random.uniform(a, b)区别: random.ra

  • Python requests模块基础使用方法实例及高级应用(自动登陆,抓取网页源码)实例详解

    1.Python requests模块说明 requests是使用Apache2 licensed 许可证的HTTP库. 用python编写. 比urllib2模块更简洁. Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码. 在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作. 现代,国际化

  • Python collections模块的使用方法

    collections模块 这个模块实现了特定目标的容器,以提供Python标准内建容器 dict.list.set.tuple 的替代选择. Counter:字典的子类,提供了可哈希对象的计数功能 defaultdict:字典的子类,提供了一个工厂函数,为字典查询提供了默认值 OrderedDict:字典的子类,保留了他们被添加的顺序 namedtuple:创建命名元组子类的工厂函数 deque:类似列表容器,实现了在两端快速添加(append)和弹出(pop) ChainMap:类似字典的容

  • 解读python logging模块的使用方法

    1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 1.可以通过设置不同的日志等级,在release版本中只输出重要信息,而不必显示大量的调试信息: 2.print将所有信息都输出到标准输出中,严重影响开发者从标准输出中查看其它数据:logging则可以由开发者决定将信息输出到什么地方,以及怎么输出: logging框架中主要由四个部分组成: Loggers: 可供

  • 简单了解python 邮件模块的使用方法

    我们在开发程序的时候,有时候需要开发一些自动化的任务,执行完之后,将结果自动的发送一份邮件,python发送邮件使用smtplib模块,是一个标准包,直接import导入使用即可,代码如下: import smtplib from email.mime.text import MIMEText email_host = 'smtp.163.com' #邮箱地址 email_user = 'xxxx@163.com' # 发送者账号 email_pwd = 'xxxx' # 发送者密码 maill

  • python retrying模块的使用方法详解

    前言 我们在写爬虫的过程中,经常遇到爬取失败的情况,这个时候我们一般会通过try块去进行重试,但是每次都写那么一堆try块,真的是太麻烦,所以今天就来说一个比较pythonic的模块,retrying. 安装 retrying模块的安装很简单直接用匹配安装即可. pip install retrying retring模块通过装饰器的形式来进行重试操作的,首先我们看一个简单的例子 from retrying import retry @retry(stop_max_attempt_number=

随机推荐