test commit #1
149
cheddar.py
149
cheddar.py
@ -1,58 +1,77 @@
|
|||||||
from nltk.chat.util import Chat
|
import re
|
||||||
|
import random
|
||||||
|
|
||||||
reflections = {
|
|
||||||
"jestem": "jestes",
|
|
||||||
"bylem": "byles",
|
|
||||||
"bylam": "bylas",
|
|
||||||
"ja": "ty",
|
|
||||||
"jestem": "jestes",
|
|
||||||
"chcialbym": "chcialbys",
|
|
||||||
"chcialabym": "chcialabys",
|
|
||||||
"mam": "masz",
|
|
||||||
"bede": "bedziesz",
|
|
||||||
"moj": "twoj",
|
|
||||||
"twoja": "moja",
|
|
||||||
"moim": "twoim",
|
|
||||||
"mojego": "twojego",
|
|
||||||
"jestes": "jestem",
|
|
||||||
"byles": "bylem",
|
|
||||||
"masz": "mam",
|
|
||||||
"bedziesz": "bede",
|
|
||||||
"twoj": "moj",
|
|
||||||
"twoja": "moja",
|
|
||||||
"twoim": "moim",
|
|
||||||
"twojego": "mojego",
|
|
||||||
"ty": "ja",
|
|
||||||
"nasz": "wasz",
|
|
||||||
"moge": "mozesz"
|
|
||||||
}
|
|
||||||
|
|
||||||
pairs = (
|
class Elizabeth:
|
||||||
(
|
questions = ((r'Potrzebuję (.*)',
|
||||||
r"Potrzebuje (.*)",
|
('Czemu potrzebujesz %1?',
|
||||||
(
|
'Naprawdę pomogłoby, gdybyś miał %1?',
|
||||||
"Dlaczego potrzebujesz %1?",
|
'Czy aby na pewno potrzebujesz %1?')),
|
||||||
"Czy naprawdę pomogloby Ci zdobycie %1?",
|
(r'Jestem (.*)',
|
||||||
"Czy jestes pewien, ze potrzebujesz %1?",
|
('Czy przyszedłeś dziś do mnie, ponieważ jesteś %1?',
|
||||||
),
|
'Jak długo jesteś %1?',
|
||||||
),
|
'Jak czujesz się z byciem %1?')),
|
||||||
(
|
('Jesteś (.*)',
|
||||||
r"Dlaczego nie moge (.*)",
|
('Czemu to ważne, że jestem %1?',
|
||||||
(
|
'Chciałbyś, abym nie był %1?',
|
||||||
"Czy uwazasz, ze powinienes moc %1?",
|
'Mozę to ty uważasz, że jestem %1.',
|
||||||
"Gdybys mogl %1, co bys zrobil?",
|
'Mogę być %1, co o tym sądzisz?')),
|
||||||
"Nie wiem, dlaczego nie mozesz %1?",
|
(r'Co (.*)',
|
||||||
"Czy naprawde probowales?",
|
('Czemu pytasz?',
|
||||||
),
|
'W jaki sposób odpowiedź na to pytania by ci pomogą?',
|
||||||
),
|
'A co ty myślisz?')),
|
||||||
|
(r'Jak (.*)',
|
||||||
|
('A jak myślisz?',
|
||||||
|
'Może sam odpowiedz sobie na to pytanie',
|
||||||
|
"Jakie jest twoje PRAWDZIWE pytanie")),
|
||||||
|
(r'Ponieważ (.*)',
|
||||||
|
('Czy to na pewno prawdziwy powód?',
|
||||||
|
'Jakie inne powody przychodzą ci na myśl?',
|
||||||
|
'Skoro %1, to jakie inne powody są prawdziwe?')),
|
||||||
|
(r'(.*) przepraszam (.*)',
|
||||||
|
('Nie masz za co przepraszać',
|
||||||
|
'Jakie uczucia masz w sobie, gdy przepraszasz?')),
|
||||||
|
(r'Myślę, że (.*)',
|
||||||
|
('Jesteś niepewny co do %1?', 'Naprawdę tak myślisz?', "Ale nie jesteś pewien czy %1?")),
|
||||||
|
(r'Dlaczego (.*)',
|
||||||
|
("Czemu to ty nie powiesz mi dlaczego %1?", 'CZemu myślisz, że %1?')),
|
||||||
|
(r'Chcę (.*)',
|
||||||
|
('Co to by dla ciebie oznaczało, gdybyś dostał %1?',
|
||||||
|
'Czemu chcesz %1?',
|
||||||
|
'Co byś zrobił, gdybyś dostał %1?',
|
||||||
|
'Gdybyś dostał %1, to co byś zrobił?')),
|
||||||
|
(r'(.*)matka(.*)',
|
||||||
|
('Powiedz mi więcej o swojej matce.',
|
||||||
|
'Jak wyglądałą relacja z twoją matką?',
|
||||||
|
'Jakie są twoje uczucia dziś?')),
|
||||||
|
(r'(.*) ojciec(.*)',
|
||||||
|
('Powiedz mi więcej o swoim ojcu.',
|
||||||
|
'Jak twój ojciec sprawia, że się czujesz?'
|
||||||
|
)),
|
||||||
|
|
||||||
|
(r'(.*)\\?',
|
||||||
|
('Być może odpowiedź jest w tobie?',
|
||||||
|
'Czemu to TY nie powiesz MI?',
|
||||||
|
"Czemu o to pytasz?")),
|
||||||
|
|
||||||
|
(r'(.*)',
|
||||||
|
('Proszę, powiedz mi więcej',
|
||||||
|
"Zmieńmy temat... opowiedz mi o swojej rodzinie.",
|
||||||
|
'Możesz rozwinąć?',
|
||||||
|
'Możesz powiedzieć mi więcej o %1?',
|
||||||
|
'Rozumiem.',
|
||||||
|
'To bardzo interesujące',
|
||||||
|
'Rozumiem.. i co Ci to mówi?',
|
||||||
|
'Jakie uczucia to w tobie wywołuje?',
|
||||||
|
'Jak się czujesz, mówiąc to?')),
|
||||||
|
|
||||||
(
|
(
|
||||||
r"Nie moge (.*)",
|
r"Nie moge (.*)",
|
||||||
(
|
(
|
||||||
"Skad wiesz, ze nie mozesz %1?",
|
"Skad wiesz, ze nie mozesz %1?",
|
||||||
"Byc moze moglbys %1, gdybys sprobowal.",
|
"Byc moze moglbys %1, gdybys sprobowal.",
|
||||||
"Co musialbys zrobic zeby %1?",
|
"Co musialbys zrobic zeby %1?",
|
||||||
),
|
)),
|
||||||
),
|
|
||||||
(
|
(
|
||||||
r"Jestem (.*)",
|
r"Jestem (.*)",
|
||||||
(
|
(
|
||||||
@ -62,8 +81,7 @@ pairs = (
|
|||||||
"Jak sie czujesz bedac %1?",
|
"Jak sie czujesz bedac %1?",
|
||||||
"Dlaczego mowisz mi, ze jestes %1?",
|
"Dlaczego mowisz mi, ze jestes %1?",
|
||||||
"Dlaczego uwazasz, ze jestes %1?",
|
"Dlaczego uwazasz, ze jestes %1?",
|
||||||
),
|
)),
|
||||||
),
|
|
||||||
(
|
(
|
||||||
r"Czy jestes (.*)",
|
r"Czy jestes (.*)",
|
||||||
(
|
(
|
||||||
@ -71,24 +89,21 @@ pairs = (
|
|||||||
"Czy wolabys gdybym nie byl %1?",
|
"Czy wolabys gdybym nie byl %1?",
|
||||||
"Byc moze uwazasz, ze jestem %1.",
|
"Byc moze uwazasz, ze jestem %1.",
|
||||||
"Byc moze jestem %1, co o tym sadzisz?",
|
"Byc moze jestem %1, co o tym sadzisz?",
|
||||||
),
|
)),
|
||||||
),
|
|
||||||
(
|
(
|
||||||
r"Co (.*)",
|
r"Co (.*)",
|
||||||
(
|
(
|
||||||
"Dlaczego pytasz?",
|
"Dlaczego pytasz?",
|
||||||
"W jaki sposob pomoglaby ci odpowiedz na to pytanie?",
|
"W jaki sposob pomoglaby ci odpowiedz na to pytanie?",
|
||||||
"Co o tym myslisz?",
|
"Co o tym myslisz?",
|
||||||
),
|
)),
|
||||||
),
|
|
||||||
(
|
(
|
||||||
r"Jak (.*)",
|
r"Jak (.*)",
|
||||||
(
|
(
|
||||||
"Jak sadzisz?",
|
"Jak sadzisz?",
|
||||||
"Byc moze potrafisz odpowiedziec na swoje wlasne pytanie.",
|
"Byc moze potrafisz odpowiedziec na swoje wlasne pytanie.",
|
||||||
"O co tak naprawde pytasz?",
|
"O co tak naprawde pytasz?",
|
||||||
),
|
)),
|
||||||
),
|
|
||||||
(
|
(
|
||||||
r"Poniewaz (.*)",
|
r"Poniewaz (.*)",
|
||||||
(
|
(
|
||||||
@ -96,14 +111,24 @@ pairs = (
|
|||||||
"Jakie inne powody przychodza Ci na mysl?",
|
"Jakie inne powody przychodza Ci na mysl?",
|
||||||
"Czy ten powod odnosi sie do czegos innego?",
|
"Czy ten powod odnosi sie do czegos innego?",
|
||||||
"Jesli %1, to co jeszcze musi byc prawda?",
|
"Jesli %1, to co jeszcze musi byc prawda?",
|
||||||
),
|
))
|
||||||
),
|
|
||||||
)
|
)
|
||||||
|
|
||||||
cheddar = Chat(pairs, reflections)
|
def ask(self, question):
|
||||||
|
question = question.lower()
|
||||||
|
for i in self.questions:
|
||||||
|
result = re.match(i[0], question)
|
||||||
|
if result:
|
||||||
|
print(random.choice(i[1]))
|
||||||
|
return
|
||||||
|
|
||||||
print("\nNapisz 'quit' aby zakonczyc.")
|
|
||||||
print("-" * 70)
|
|
||||||
|
|
||||||
print("Witaj. Jak sie dzisiaj czujesz?")
|
ela = Elizabeth()
|
||||||
cheddar.converse()
|
|
||||||
|
print("Cześć, o czym chcesz porozmawiać?")
|
||||||
|
while True:
|
||||||
|
question = input().lower()
|
||||||
|
if question == "cześć" or question == "do widzenia":
|
||||||
|
print("Do widzenia")
|
||||||
|
break
|
||||||
|
ela.ask(question)
|
||||||
|
Loading…
Reference in New Issue
Block a user