检测英语口语

项目需求

  1. 在命令行窗口运行;
  2. 程序运行时,会让你输入一句英语,然后你需要对着麦克风读出这句英语;
  3. 程序会判断你读的对不对,如果不对会让你重读,直到读对为止。

Python编程知识点

  • while循环
  • 用户输入字符串
  • 字符串小写
  • 条件判断
  • 自定义函数
  • 异常处理
  • SpeechRecognition 模块 (安装: pip install SpeechRecognition) it support these speech recognitions:
    • recognize_bing(): Microsoft Bing Speech
    • recognize_google(): Google Web Speech API
    • recognize_google_cloud(): Google Cloud Speech - 需要安装google-cloud-speech模块
    • recognize_houndify(): Houndify by SoundHound
    • recognize_ibm(): IBM Speech to Text
    • recognize_sphinx(): CMU Sphinx - 需要安装PocketSphinx模块
    • recognize_wit(): Wit.ai
  • pyaudio 模块 (安装: pip install pyaudio)

参考代码

import speech_recognition as srdef recognize_speech_from_mic(recognizer, microphone):'''麦克风录音并转文字 `microphone`.:param recognizer: 语音识别器:param microphone: 麦克风:return: `None` 如果识别失败返回None,否则返回语音文字'''print('开始朗读')# 录音并去除噪音with microphone as source:recognizer.adjust_for_ambient_noise(source)audio = recognizer.listen(source)# 调用语音识别,亲测微软bing国内可用,国外建议使用googletry:text = recognizer.recognize_google(audio)except Exception as e:print(e)text = Nonereturn textif __name__ == '__main__':# 输入text = input('请输入一句英语: ').strip()# 创建语音识别器和麦克风recognizer = sr.Recognizer()microphone = sr.Microphone()# 录音并获取文字speech_text = recognize_speech_from_mic(recognizer, microphone)while speech_text != None and text.lower() != speech_text.lower():print(speech_text)speech_text = recognize_speech_from_mic(recognizer, microphone)if speech_text:print('{} {}'.format(speech_text, '✓'))else:print('语音识别服务暂不可用,请稍后再试。')

注意:本代码使用的是google语音识别,有些地区可能无法正常使用,请注册并使用其他的如微软Bing等语音识别服务等。

运行测试

  • 使用 pip install requirements.txt 安装模块: pyaudio and SpeechRecognition
  • 运行
python 4.py

挑战100+Python项目4:练习英语口语相关推荐

  1. python中常用英语口语_常用英语口语100句超实用-

    常用英语口语 100 句(超实用) 1 . how are you doing? (你好吗?) 2 . i'm doing great. (我过得很好. ) 3 . what's up? (出什么事了 ...

  2. python中常用英语口语_常用英语口语100句(超实用)_

    学习资料整理 常用英语口语 100 句(超实用) 1 . how are you doing? (你好吗?) 2 . i'm doing great.(我过得很好. ) 3 . what's up?( ...

  3. Github上有趣的100个python项目

    Github上面有很多有趣的python项目,包括软件.库.教程.资源等.这次收集了其中比较受欢迎的100个,供大家参考. 资料来源:https://github.com/521xueweihan/H ...

  4. 船新的100个Python项目,看了再学毕竟快乐总是一闪而过

    Github上面有很多有趣的python项目,包括软件.库.教程.资源等.这次收集了其中比较受欢迎的100个,供大家参考.(内容比较多,建议收藏了再看!) 资料来源:https://github.co ...

  5. 学英语---(2)脱口而出100句经典英语口语

    脱口而出100句经典英语口语,孩子大人都学起来! Any day will do. 哪一天都可以. Any messages for me? 有我的留言吗? Are you by yourself? ...

  6. python换零钱有多少种方案_Python之100个项目:零钱转换程序

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 # Python之100个项目# 假设一个商品的价值为x元,你给了y元, 计算找给你z元的程序(xyz任意的名称而已).需要注意的是,找你的零钱需要转换成 ...

  7. python换零钱_Python之100个项目:零钱转换程序

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 # Python之100个项目# 假设一个商品的价值为x元,你给了y元, 计算找给你z元的程序(xyz任意的名称而已).需要注意的是,找你的零钱需要转换成 ...

  8. 新手python的100个实战项目,python练手经典100例项目

    Python 的练手项目有哪些值得推荐? 基础和爬虫.Python由荷兰数学和计算机科学研究学会的Guido van Rossum于1990 年代初设计,作为一门叫做ABC语言的替代品. Python ...

  9. 肝了N小时,整理了100+Python爬虫项目

    提到爬虫,相信绝大部分人的第一反应就是 Python,尽管其他编程语言一样能写爬虫,但在人们的印象中,爬虫似乎与 Python 绑定了一样,由此可见爬虫在 Python 中的份量. 最近小二做了个免费 ...

最新文章

  1. 制造业人工智能8大应用场景
  2. Core Animation简介
  3. 从volatile解读ConcurrentHashMap(jdk1.6.0)无锁读
  4. [转自scott]ASP.NET MVC框架 (第二部分): URL路径选择
  5. vue单页面跳页没有数据了_详解刷新页面vuex数据不消失和不跳转页面的解决
  6. VisualStudio opencv配置
  7. leetcode算法刷题记录表
  8. matlab int 积不出,matlab – 点积:*命令与循环给出不同的结果
  9. @modelattribute注解用postman测试怎么传参_谁要是再敢用Map传参,我过去就是一JIO...
  10. Java集合:Map集合
  11. 一个不能进入系统的小问题——供远程为别人解决问题时参考。
  12. SharePoint Portal Server-管理匿名访问设置
  13. WPF学习之路(二) XAML(续)
  14. android 焦点获取问题(手机端和TV端)
  15. mongodb类型转换
  16. 刀根さん、御光臨を歓迎します。
  17. 嵌入式系统python开发_嵌组词_嵌的拼音含义_组词造句解释_嵌字的组词
  18. TSFS终端存储文件系统边缘计算技术构架
  19. 厦门有哪些靠谱的互联网公司
  20. 怎么录制微课视频,微课录制技巧

热门文章

  1. 十个谋杀安卓手机电池的应用
  2. RabbitMQ入门4:生产者、消费者演示;多个消费者平均压力、公平派遣;
  3. Deeply supervised salient object detection with short connections 论文复现
  4. DRCN(Deeply-Recursive Convolutional Network for Image Super-Resolution)超分辨网络-详细分析
  5. VirtualBox使用物理硬盘分区作虚拟机磁盘
  6. 如何将for i in range循环中输出的结果放入dataframe中
  7. 2022 年前端趋势的 技术发展情况
  8. C语言答案杨崇艳,下列关于儿童语句发展的说法中,哪些是正确的? ( )
  9. Ltspice仿真入门
  10. Proteus与模电数电学习第一弹