Сделал 8 задание

This commit is contained in:
parent fa11e132a9
commit 0ab6037504

68
lesson.8.py Normal file
View file

@ -0,0 +1,68 @@
''' ****** Задание 7 из 20 *********
* Каждый воспитанник детского сада может любить одну или несколько каш. Воспитателю нужно быстро получить список фамилий тех, кто любит определённый вид каши.
Напишите программу, которая по списку учеников и их любимых каш определяет, кто именно любит заданную кашу.
Формат ввода
В первой строке задаётся количество детей в группе (N).
В следующих N строках записана фамилия ребенка и список его любимых каш.
В последней строке записана каша, информацию о которой хочет получить воспитатель.
Формат вывода
Фамилии учеников, которые любят заданную кашу, в алфавитном порядке.
Если таких не окажется, в строке вывода нужно написать «Таких нет».
Подсказка
При считывании данных удобно воспользоваться распаковкой:
name, *food = input().split()
Таким образом вы получите имя человека и список его любимых каш. Пройдите по этому списку:
если каша раньше не встречалась, запишите её в словарь, а в качестве значения установите список, содержащий текущего ребенка;
иначе, добавьте текущего ребёнка в уже существующий список.
Выведите отсортированный список по ключу равному введённой каше.
Пример 1
Ввод
5
Васильев манная
Петров манная
Васечкин манная
Иванов овсяная
Михайлов овсяная
манная
Вывод
Васечкин
Васильев
Петров
'''
if __name__ == "__main__":
total_students = int(input())
student_records = []
for _ in range(total_students):
record = input().split()
student_records.append(record)
student_records.sort()
search_subject = input()
matching_students_count = 0
for student in student_records:
if search_subject in student[1:]:
print(student[0])
matching_students_count += 1
if matching_students_count == 0:
print('Таких нет')