Я пишу программу, которая читает неопределенное количество целых чисел и находит те, у которых больше всего вхождений. Например, если вы введете 2 3 40 3 5 4 –3 3 3 2 0, число 3 будет встречаться чаще всего. Введите все числа в одну строку. Если не один, а несколько номеров имеют наибольшее количество вхождений, следует указать все они. Например, поскольку 9 и 3 появляются дважды в списке 9 30 3 9 3 2 4, следует сообщать обо всех случаях.
def main():
numbers= input("Enter the numbers: ").strip().split()
dict_numbers = []
for number in numbers:
if number in dict_numbers:
dict_numbers[number] += 1
else:
dict_numbers[number] = 1
most_occurrence = max(dict_numbers.values())
print("Most Occurrence:",end=" ")
for number, occurrence in dict_numbers.items():
if(most_occurrence == occurrence):
print(number, end=" ")
main()
Я продолжаю получать следующую ошибку:
Enter the numbers: 1 2 4 6 6
Traceback (most recent call last):
File "/Users/eriksaini/Desktop/Python/M09/Assignments/countLetters.py", line 20, in <module>
main()
File "/Users/eriksaini/Desktop/Python/M09/Assignments/countLetters.py", line 10, in main
dict_numbers[number] = 1
TypeError: list indices must be integers or slices, not str
>>>