Информатика · ҰБТ сұрағы №16254
Бағдарлама пайдаланушылардың әрекет журналын өңдейді: log = ["u1:10", "u2:25", "u1:5", "u3:40", "u2:5", "u1:20"] total = {} for rec in log: name, val = rec.split(":") total[name] = total.get(name, 0) + int(val) top = sorted(total.items(), key=lambda p: (-p[1], p[0]))

Келесі код қандай нәтиже береді? ranks = {n: i for i, (n, s) in enumerate(top, 1)} print(ranks)

Дұрыс жауабы мен түсіндірмесі
Жауабы: 'u3': 1, 'u1': 2, 'u2': 3

top = [('u3', 40), ('u1', 35), ('u2', 30)]; enumerate 1-ден нөмірлейді, сөздік осы реттің бойымен құрылады.

«Python программалау тілінде алгоритмдерді программалау» тақырыбынан тағы