= [{"slug": "hello", "title": "Hello blog"}, {...}]
некоторые slug из slug_list уникальны и могут не присутствовать в blog_list по ключу.
хочу в итоге получить список словарей вида вида
[{slug: title}] , причем если slug не присутствует в blog_list, то вместо title будет None
Вопрос вот в чем: реально ли это сделать в 1 цикл? У меня в 2 получается и это такое себе
[{
slug: next((blog["title"] for blog in blog_list if blog["slug"] == slug), None)
} for slug in slug_list]
один - да
буду рад, если подскажешь в какую сторону копать ) а то 2 list,а по итогу + разная структура немного сбивает)
ну тогда у тебя 3 цикла;) in всяко быстрее вложенных циклов работает;)
добрался до зарядки) так, почему у меня 3 цикла?) цикл в цикле - да. p.s. в твоем варианте, кажется, будет косяк, если slug на 1 позиции, а словарь с этим slug, скажем, на втором
да там неправильно работать будет с map, уже посмотрел) если порядок slug и словаря с этим slug не совпадает - маппинг идет лесом)
ну есть еще косяк с title, в первом варианте я это поправил и не обратил твое внимание на него - по условию вместо title должен быть slug, т.е. его итерировать обязательно. Ладно, спасибо за помощь )
Обсуждают сегодня