python 计算器语音播报模拟
Posted A running snail,little step ev
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 计算器语音播报模拟相关的知识,希望对你有一定的参考价值。
计算器语音播报模拟
python 要点
1.闭包
2.链式计算
3.语音播报
4.类与实例
import pyttsx3 class Caculator: def __say(self,word): speaker = pyttsx3.init() speaker.say(word) speaker.runAndWait() def __create_say(word=""): def __say_word(func): def inner(self,n): self.__say(word+str(n)) return func(self,n) return inner return __say_word def __check_number(func): def inneer(self,n): if not isinstance(n, int): raise TypeError("数据类型应为整形数据") return func(self,n) return inneer @__check_number @__create_say("") def __init__(self,num): self.__result=num @__check_number @__create_say("add") def add(self,n): self.__result+=n return self @__check_number @__create_say("minus") def mins(self,n): self.__result-=n return self @__check_number @__create_say("multiply") def multiply(self,n): self.__result*=n return self def show(self): self.__say("final result is :%d" %self.__result) print("final result is:%d" %self.__result) return self def clear(self): self.__say("clean up to Zero") self.__result=0 print("clean up result to %d" % self.__result) return self @property def result(self): return self.__result c1 = Caculator(10) c1.add(6).mins(2).multiply(2).show().clear().add(500).mins(200).multiply(20).show()
显示结果
final result is:28
clean up result to 0
final result is:6000
以上是关于python 计算器语音播报模拟的主要内容,如果未能解决你的问题,请参考以下文章
Jetson Nano python中文语音播报数字距离 基于pyttsx3
使用Python做一个语音播报温湿度系统,元气满满的一天从听到他开始