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()也是同上,在新版本中不再支持了。


  • 相关阅读:
    404. 左叶子之和
    112. 路径总和
    110. 平衡二叉树
    513. 找树左下角的值
    博客第一天
    博客开通第七天
    博客第二天
    超级实用且不花哨的js代码大全
    利用OleDb的GetOLEDBSchemaTable方法得到数据库架构信息.NET教程,数据库应用
    实现给定一个数据库连接得到数据库下所有的数据表
  • 原文地址:https://www.cnblogs.com/vocaloid01/p/9514159.html
Copyright © 2011-2022 走看看