from collections import OrderedDict
d = OrderedDict([(1, 1), (2, 10), (3, 27), (4, 10), (5, 7), (6, 10)])
print(sum(map(d.get, itertools.takewhile(lambda key: key != 5, d))))
Python: как получить сумму всех значений, пока в словаре не будет достигнут определенный ключ