Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time , sys , sl4a , re
- def write(msg) :
- andr = sl4a.Android()
- print(msg)
- andr.ttsSpeak(msg)
- operatorRegex = re.compile(r"""(
- ((.*) #Testo +
- (\s+))? #Spazi iniziali
- (quanto\s{1}?fa|qual'è\s{1}?il\s{1}?risultato di|calcolami)? #Domanda
- (\s*) #Spazio
- (\d+) #Primo Numero
- (\s*) #Spazio
- (\+|\*|-|/|\*\*) #Operatore
- (\s*) #Spazio
- (\d+) #Secondo Numero
- )""" , re.VERBOSE)
- memory = {}
- write("Ciao sono Juno, cosa mi vuoi dire?")
- while True :
- d = input(">>>")
- d = d.lower() \
- .replace("?","") \
- .replace("!","") \
- .replace(".","") \
- .replace(",","") \
- .replace(":","")
- if d == "" :
- continue
- if operatorRegex.search(d) != None :
- Match = operatorRegex.search(d)
- Num1 = int(Match.group(7))
- Num2 = int(Match.group(11))
- Operator = Match.group(9)
- ris = 0
- if Operator == "+" :
- ris = Num1 + Num2
- elif Operator == "-" :
- ris = Num1 - Num2
- elif Operator == "*" :
- ris = Num1 * Num2
- elif Operator == "/" :
- ris = Num1 / Num2
- elif Operator == "**" :
- ris = Num1 ** Num2
- if len(str(ris)) < 40 :
- write("Il risultato è: " + str(ris))
- else :
- write("Il risultato è:\n" + str(ris))
- continue
- if d == "esci" :
- write("\nCiao, spero di rivederti!\n")
- time.sleep(2)
- sys.exit()
- if d in memory :
- write(memory[d])
- else :
- write("Non ho capito, cosa devo rispondere?")
- r = input(">>>")
- if r != "niente" :
- memory[d] = r
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement