FI9Bm1Fp07wwCoepvvJy @ develop.16
Python и магия генераторов : 24/07/19 06:21 : Andrew Lobanov to All [reply]

Продолжаю учиться писать программы на питоне и возник один странный, может быть, вопрос. Есть строка, в которой хранится в "сыром" виде выхлопом x/c. То есть данные в виде

====
echo.area:messages_count
====



Я её хочу обработать минимальным количеством кода. Так что решил использовать генератор:

====
{x.split(":")[0]: x.split(":")[1] for x in x_i.split("\n") if ":" in x}
====



Но при этом мне очень не нравится дважды вызванный .split(":"). Можно как-то произвести сплит единожды для каждой итерации или придётся городить огород для этого?

Эффективность обработки также играет для меня роль, так как впоследствии наработанные подходы я наверняка буду пытаться применять и для больших объёмов данных.