记录一个在windows平台测试python的speech语音库的报错
环境:anaconda + python3.7
报错: "module 'speech' has no attribute 'say'"
代码:
import speech #调用speech库
def transfer():
speech.say('请选择:1.转换文字,2.转换文本,3.退出')
#speech.say是固用语法,它可以调用你的麦克风,并且说出括号内的内容
n=int(input('请选择:1.转换文字,2.转换文本,3.退出'))
#这里是一个输入,input获取你输入的内容,并将其转化为int类型,将它赋值给n(n没有任何意义)
while True:#循环
if n==1:
speech.say("请输入:")#同上
str = input("请输入:")#同上
speech.say("你输入的内容是: ")#同上
speech.say(str)#调用麦克风说出你输入的内容
if n==2:
speech.say('请输入文本名')#同上
n1=input('请输入文本名')#同上
fd = open(n1, encoding="utf-8").read()#打开该文本,并读取
speech.say(fd)
if n==3:
speech.say('您已退出')#如你所见,break了
break
if __name__ == '__main__':
transfer()
点击运行一直报错,提示找不到say()方法
AttributeError: module 'speech' has no attribute 'say'
网上一顿搜索,按照提示在当前env中安装了
1、pywin32 pip install pywin32
2、speech pip install speech
运行还是照样报错,找了半天,才发现原来是py文件和speech库重名了,优先导入了demo的speech.py,吐了,还进去env/namespace/Lib/speech.py找半天,发现里面明明就有def say(),
error.png
附上一遍speech常见问题处理的链接:
https://blog.csdn.net/weixin_44345862/article/details/100765622