Python很强大,也许很多人不相信。但是真正了解到它时,我还是情不自禁的喜欢上了它。

人生苦短,我用Python。

  • 使用Speech API
  • pyttsx方式

代码Demo参考
准备

我测试使用的Python版本为2.7.10,如果你的版本是Python3.5的话,这里就不太适合了。
在windows上进行测试的话,这里有两种可选的方式:

下载准备:

对于这些无非就是下载安装了。

使用Speech API

原理:
我们的想法是借助微软的语音接口,所以我们肯定是要进行调用 相关的接口。所以我们需要安装pywin32来帮助我们完成这一个底层的交互。
示例代码

1
2
3
import win32com.client
speaker = win32com.client.Dispatch("SAPI.SpVoice")
speaker.Speak("Hello, it works!")

小总结
是的,调用接口来实现语音功能就是这么简单,但是我们不得不来聊一聊这种方式的缺点。

缺点:

  1. 对中文支持的不够好,仅仅是这一点,估计在中国没几个用它的了。22. 语速不能很好的控制,详细的API介绍可以参照这里API参考

pyttsx方式

示例代码

1
2
3
4
5
6
7
8
9
10
11
12
13
# coding:utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf8')
import pyttsx
engine = pyttsx.init()
engine.say('hello world')
engine.say('你好,世界!')
engine.runAndWait()
# 朗读一次
engine.endLoop()

小总结:
使用pyttsx,我们可以借助其强大的API来实现我们基本的业务需求。很酷吧。

pyttsx深究:

以上就是对python文字转语音的小小见解。