Изменение списка по условию
Главная › Форумы › Задать вопрос › Изменение списка по условию
- В этой теме 4 ответа, 3 участника, последнее обновление 5 лет, 11 месяцев назад сделано Анатолий.
-
АвторСообщения
-
Добрый день, друзья! Прошу помощи. Есть два списка с числами: первый двухуровневый, второй одно. Если конкретно, то числа – номера листов, которые перевел из строк в числа. В таком же порядке второго списка имеются элементы (сами листы). Моя задача: на место номеров двохуровневого списка получить сами элементы, которые соответствуют второму с числами. Как их правильно сравнить – не могу придумать. Метод zip сравнивает только равные по длине списки. С остальными похожими пока не знаком.. Спасибо всем неравнодушным!
Я совсем не понял суть вопроса.Ведь правильно заданный вопрос содержит до 90% ответа….
Если слева это номера листов (без разницы в каком формате), а справа сами листы, то почему не совпадет кол-во элементов по спискам.
Если левый список содержит номера листов какой-то выборки, сгруппированной по параметру или запросу сортировки,то надо такой же порядок применить и листам,тогда получите такой же список.
Проще работать с начальными элементами-листами,а потом уже разворачивать эти элементы по параметрам,которые надо получить.
Может проще поставить вопрос по начальной задаче для скрипта?
Александр, спасибо за ответ! По ходу углубления в насущный вопрос, у меня выработались такие же мысли как и у вас: лучше с самого начала постараться привести сами листы(элементы) (справа в данном примере) в необходимый порядок расположения (слева). Сейчас разрабатывал скрипт собирания всех листов (категория Основные надписи) в группы для создания наборов видов со списками листов и соответствующих по имени им групп – параметров печати. Поскольку максимальный размер бумаги в принтере А3, а листы бывают разного формата, чтобы нормально печатать приходилось изощряться смещением печати для каждого листа. Вот и пытался немного ускорить эту рутину.
А насчет списков, все же надеюсь, что ответ таки имеется стандартными функциями питона: возможно map, который я еще пока не освоил, возможно iterator zip_longest, с которым также пока не научился работать. По поводу картинки, в предыдущем посте: левый список с числами в сложном порядке и правый с теми же числами думал сравнить между собой и, при совпадании чисел, на позиции левого списка подставлялись бы элементы, которые имеют соответствие правого списка.
то?
Таки добрался до ответа. txt, немного не то, но спасибо за внимание моему вопросу. Понимаю, что возможно неточно дал условия задачи или не показал всех необходимых картинок. Посидел, попробовал, получилось также обычными нодами все организовать.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.