zoukankan      html  css  js  c++  java
  • Python pyttsx3实现点名模拟&pyttsx3使用中的小问题解决方案

        昨天没事干用百度语音调戏了一波室友,感觉很好玩,所以今天就想着模拟一下我们老师上课的点名系统(当然是渣渣版的啦)大致了解了一下后决定还是用大python吧,毕竟真的很省事。

    话不多说看代码:

    import pyttsx3
    import time
    
    engine = pyttsx3.init()
    with open("name.txt","r") as f:
    	fnamelist = f.readlines()
    
    engine.say('二零一八枪毙名单点名开始')
    engine.runAndWait()
    time.sleep(1)
    
    for S in fnamelist:
    	engine.say(S)
    	engine.runAndWait()
    	time.sleep(1)
    
    engine.say('点名完毕')
    engine.runAndWait()
    	

    注意2018会读成“两千零一十八”所以这里写成“二零一八”。

    name.txt为名册。

    小问题及解决方案:

        1:很多人可能会在网上看教程讲的是pyttsx,这个我也安装了,不过会出现“no module named ‘engine’”这样的问题。而pyttsx3是可以直接用的(仅限于使用python3的,因为python2我没用过我也不清楚)。

        2:网上很多人的样例代码中都有这么两行

    import sys
    sys.setdefaultencoding('utf8')
    然而python3默认utf-8在新版本的python中已经不支持setdefaultencoding函数了。所以不用写,否则会报错:
    module 'sys' has no attribute 'setdefaultencoding'
    另外reload()也是同上,在新版本中不再支持了。


  • 相关阅读:
    简单复利计算java板
    弹出提示框的方式——java
    实验一 命令解释程序
    简单复利计算c语言实现
    操作系统
    jsp 页面和 jsp标记
    对it行业的一些看法
    又穷自动机的构造
    复利计算——结对编程2.0
    汉堡包
  • 原文地址:https://www.cnblogs.com/vocaloid01/p/9514159.html
Copyright © 2011-2022 走看看