ответ:
округлением чисел в python занимается встроенная функция round.
round(number[, ndigits]) - округляет число number до ndigits знаков после запятой (по умолчанию, до нуля знаков, то есть, до ближайшего целого)
тут есть одна особенность, о которой нужно знать, и о которой часто забывают.
со школы многие привыкли, что, когда (n + 1) знак = 5, а последующие знаки равны нулю, округление производится всегда в большую по модулю сторону.
однако, как видно из примеров, в python это не так. здесь используется так называемое "банковское округление", то есть округление к ближайшему чётному.
на практике это оказывается не так уж и важно
что-то не так, правда? на самом деле, всё именно так, как и задумывалось. просто из-за проблем с точностью чисел с плавающей точкой это число чуть больше, чем 2.85, а потому округляется до 2.9
вот код (лучше скопируй с ):
import random
import collections
n = int(input("введите число n: ")) # спрашиваем у пользователя число n
my_dict = dict() # создаём наш словарь
for key in range(1, n + 1): # перебираем все числа от 1 до n (включительно) - это будут будущие ключи словаря,
my_dict[key] = random.randint(1, 10) # и присваиваем им случайные значения от 1 до 10 (включительно)
print("наиболее частое значение в этом словаре (%s) встречается здесь %s раз" % collections.counter(my_dict.(1)[0]) # отбираем самое частое значение в словаре с collections.counter и форматируем строку %s
ps: прочитай здесь про collections - полезная вещь: