generating responses
This commit is contained in:
parent
b72ec326cb
commit
205b629b2d
33
main.py
33
main.py
@ -1,6 +1,16 @@
|
|||||||
|
import re
|
||||||
|
import random
|
||||||
|
|
||||||
pairs = {
|
dictionary = {
|
||||||
r'.*czuję się (.*)': [
|
"cześć": ["Witaj. Jak mogę Ci pomóc?",
|
||||||
|
"Cześć. Co Ciebie dzisiaj sprowadza?",
|
||||||
|
"Hej, tu Eliza. O czym chcesz porozmawiać?"],
|
||||||
|
|
||||||
|
"tak": ["Dobrze, a powiedz coś więcej."],
|
||||||
|
|
||||||
|
"nie": ["Dlaczego nie?", "Co skłania Cię do tej odpowiedzi?"],
|
||||||
|
|
||||||
|
r'czuję się (.*)': [
|
||||||
'Dlaczego czujesz się %1?',
|
'Dlaczego czujesz się %1?',
|
||||||
'Czy to zawsze tak jest, kiedy czujesz się %1?'
|
'Czy to zawsze tak jest, kiedy czujesz się %1?'
|
||||||
'Co zazwyczaj robisz, kiedy się tak czujesz %1?'
|
'Co zazwyczaj robisz, kiedy się tak czujesz %1?'
|
||||||
@ -29,24 +39,25 @@ pairs = {
|
|||||||
|
|
||||||
|
|
||||||
# funkcja zwracająca odpowiedź na zadane pytanie
|
# funkcja zwracająca odpowiedź na zadane pytanie
|
||||||
def eliza_response(message):
|
def elisa_response(input_text):
|
||||||
for key, answers in pairs.items():
|
for pattern, response_list in dictionary.items():
|
||||||
matches = re.match(key, message.lower())
|
matches = re.match(pattern, input_text.lower())
|
||||||
if matches:
|
if matches:
|
||||||
chosen_answer = random.choice(answers)
|
chosen_response = random.choice(response_list)
|
||||||
return chosen_answer
|
return chosen_response.format(*matches.groups())
|
||||||
return "Nie rozumiem"
|
return "Nie rozumiem."
|
||||||
|
|
||||||
|
|
||||||
# pętla główna programu
|
# pętla główna programu
|
||||||
def main():
|
def main():
|
||||||
print('Cześć, jestem Eliza. Jak się czujesz dzisiaj?')
|
print('Cześć, jestem Eliza. Jak się czujesz dzisiaj?')
|
||||||
while True:
|
while True:
|
||||||
insert = input('Ty: ')
|
insert = input('')
|
||||||
if insert.lower() in ['do widzenia', 'do zobaczenia', 'na razie'
|
if insert.lower() in ['do widzenia', 'do zobaczenia', 'na razie'
|
||||||
'pa', 'cześć', 'żegnam', 'do usłyszenia',
|
'pa', 'żegnam', 'do usłyszenia',
|
||||||
'zakończ', 'koniec', 'elo', 'żegnaj'
|
'zakończ', 'koniec', 'elo', 'żegnaj'
|
||||||
'do usłyszenia', 'pa pa', 'do następnego razu']:
|
'do usłyszenia', 'pa pa', 'do następnego razu']:
|
||||||
print('Eliza: Do widzenia!')
|
print('Do widzenia!')
|
||||||
break
|
break
|
||||||
print(eliza_response(insert))
|
print(eliza_response(insert))
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user