Информатика · ҰБТ сұрағы №16271
Бағдарлама оқушылардың нәтижелері бар мәтінді өңдейді: raw = "name,score,city\nAru,78,Astana\nBek,91,Almaty\nDana,85,Astana\nErlan,,Shymkent\nGul,64,Almaty\nHana,60,Almaty" lines = raw.split("\n") head = lines[0].split(",") rows = [dict(zip(head, ln.split(","))) for ln in lines[1:]] by_city = {} for r in rows: if r["score"]: by_city.setdefault(r["city"], []).append(int(r["score"]))

print(sum(map(len, by_city.values())), len(by_city), len(rows)) қандай үш сан шығарады?

Дұрыс жауабы мен түсіндірмесі
Жауабы: 5 2 6

by_city ішінде 2 қала (Astana, Almaty), барлығы 2 + 3 = 5 нәтиже (Erlan өтіп кетті, Shymkent кілті жасалмайды); rows ішінде 6 жол.

«Алгоритмдер және программалау» тақырыбынан тағы