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

This commit is contained in:
parent 2f7056a50f
commit 8c6fad2c00

60
lesson.12.py Normal file
View file

@ -0,0 +1,60 @@
''' ****** Задание 11 из 20 *********
* Напишите программу, которая по списку фамилий сотрудников выводит список всех однофамильцев (тех, чьи фамилии встречаются более одного раза), а также количество их повторений.
Формат ввода
В первой строке указывается количество мужчин — сотрудников организации (
N
N).
Затем идут
N
N строк с фамилиями этих сотрудников в произвольном порядке.
Формат вывода
Список однофамильцев в организации с указанием их количества в алфавитном порядке.
Если таковых нет — вывести «Однофамильцев нет».
Подсказка
В отличие от предыдущей задачи, здесь вам требуется сформировать итоговый список фамилий, отсортировать его и только потом уже вывести.
Пример 1
Ввод
6
Иванов
Петров
Сидоров
Петров
Иванов
Петров
Вывод
Иванов - 2
Петров - 3
'''
if __name__ == "__main__":
total_entries = int(input())
name_list = []
for _ in range(total_entries):
person_name = input()
name_list.append(person_name)
duplicate_records = [
f"{name} - {name_list.count(name)}"
for name in set(name_list)
if name_list.count(name) > 1
]
if duplicate_records:
for record in sorted(duplicate_records):
print(record)
else:
print('Однофамильцев нет')