


Напишите программу в Python, пожалуйста
Хорошо бы автоматизировать подсчет лайков. Напишите базовый класс Liked, который подсчитывает количество эмодзи разных типов, например, таких:
:) ) ( ;) :( ;(
При инициализации экземпляр класса принимает произвольное количество строк, а при вызове метода likes() возвращается словарь: ключи – эмодзи, значения – количество штук. Если что-то не встречалось, то ключ не создается.
Производный от базового класс MiMiMi считает лайки только в строках с котиками (cat, kitten). Не создавайте метод likes в производном классе, используйте метод базового класса!
Ввод
lines = ["Hi, ;)!", "How are you))", "Well ;)?"] lk = Liked(*lines)
print(lk.likes())
Вывод
{';)': 2, ')': 2}
class Liked:
def __init__(self, *lines):
self.count = {}
for line in lines:
for emoji in [':)', ':(', ';)', ';(', ':', ')', '(', ';']:
if emoji in line:
if emoji not in self.count:
self.count[emoji] = 1
else:
self.count[emoji] += 1
def likes(self):
return self.count
class MiMiMi(Liked):
def __init__(self, *lines):
super().__init__(*lines)
self.count = {}
for line in lines:
if "cat" in line or "kitten" in line:
for emoji in [':)', ':(', ';)', ';(', ':', ')', '(', ';']:
if emoji in line:
if emoji not in self.count:
self.count[emoji] = 1
else:
self.count[emoji] += 1
# Пример использования:
lines = ["Hi, ;)!", "How are you))", "Well ;)?", "I love my cat :)", "Cats are the best <3"]
lk = Liked(*lines)
print(lk.likes())
mm = MiMiMi(*lines)
print(mm.likes())

Тут главное не класс и метод реализовывать, а придумать сам алгоритм который берет строку, отыскивает в ней "смайлики" и создает словарь со смайликами и количеством каждого из них. А класс это уже фигня, добавляем self и все дела, это не интересно
