import re import random dictionary = { "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?', 'Czy to zawsze tak jest, kiedy czujesz się %1?', 'Co zazwyczaj robisz, kiedy się tak czujesz %1?' ], r'.*lubię (.*)': [ 'Co najbardziej lubisz w %1?', 'Dlaczego lubisz %1?', 'Czy jest coś jeszcze, co lubisz poza %1?' ], r'.*nie lubię (.*)': [ 'Co najmniej lubisz w %1?', 'Dlaczego nie lubisz %1?', 'Czy jest coś jeszcze, czego nie lubisz oprócz %1?' ], r'.*dlaczego (.*)': [ 'Czy naprawdę potrzebujesz znać powód?', 'Czy to jest ważne dla ciebie?', 'Dlaczego %1 jest ważne dla ciebie?' ], r'.*jak (.*)': [ 'Jak myślisz, jak %1 wpłynie na twoje życie?', 'Czy myślisz, że warto wiedzieć, jak %1?', 'Czy wiedza, jak %1? jest w stanie ci pomóc?' ], r'.*moje hobby to (.*)': [ 'Jak długo już się interesujesz %1?', 'Co Cię przyciąga w %1?', 'Czy %1 jest dla Ciebie sposobem na odprężenie?', ], r'.*nienawidzę (.*)': [ 'Czemu tak bardzo nie lubisz %1?', 'Czy istnieje możliwość, że twoje uczucia wobec %1 się zmienią?', 'Czy chcesz porozmawiać o tym, co powoduje twoje nienawiść wobec %1?' ] } # funkcja zwracająca odpowiedź na zadane pytanie def elisa_response(input_text): if not input_text: return "Nie napisałeś nic" for pattern, response_list in dictionary.items(): matches = re.match(pattern, input_text.lower()) if matches: chosen_response = random.choice(response_list) return chosen_response.format(*matches.groups()) return "Nie rozumiem." # pętla główna programu def main(): print('Cześć, jestem Eliza. Jak się czujesz dzisiaj?') while True: insert = input('Ty: ') if insert.lower() in ['do widzenia', 'do zobaczenia', 'na razie' 'pa', 'żegnam', 'do usłyszenia', 'zakończ', 'koniec', 'elo', 'żegnaj' 'do usłyszenia', 'pa pa', 'do następnego razu']: print('Eliza: Do widzenia!') break print("Eliza: " + elisa_response(insert)) main()