Замена одних значений в списке на другие

Главная Форумы Задать вопрос Замена одних значений в списке на другие

Просмотр 15 сообщений - с 1 по 15 (из 16 всего)
  • Автор
    Сообщения
  • #4776 Score: 0
    Александр
    Участник

    Добрый день, друзья!

    Возникла сложность с заменой значений  одного списка на значения взятые из другого списка. Проблема состоит в следующем. Для именования планов этажей извлекается список со значениями высотных отметок уровней, а также список свойств “Связанный уровень” для видов.

    В итоге есть список отметок и список с подсписком видов сгруппированных по связанному уровню. Теперь задача состоит в том, чтобы в списке вместо “Связанного уровня получить отметку…

    Подозреваю что это можно сделать стандартными нодами, но что-то впал в ступор

    Картинку прилагаю

    #4777 Score: 0
    Legantmar
    Хранитель
    474 pts

    я не совсем понял, возможно вот это имелось ввиду

    #4795 Score: 0
    Александр
    Участник

    Это не совсем то, что нужно. Попробую объяснить еще раз

    В списке видов указаны связанные уровни. В первом подсписке сложены все виды связанные с уровнем “1 этаж”. Все эти значения должны быть заменены значением отметки уровня (первое значение из списка отметок), т.е. +0,000. Все виды второго подсписка (2 этаж) должны быть заменены на соответственно второе значение из списка с отметками и т.д.

    #4796 Score: 0
    Арсений
    Участник
    1 pt

    Приветствую. Возможно отфильтровать по маске (FilterByBoolMask)?

    #4797 Score: 0
    Александр
    Участник

    Не совсем понял чем может этот нод помочь

    #4798 Score: 0
    Александр
    Участник

    Может так понятнее будет что нужно.

    #4799 Score: 0
    Александр
    Участник

    Решил вот таким образом, но возможно есть и другой способ. Очевидно что этот способ подходит только для строковых значений

    #4800 Score: 0
    Арсений
    Участник
    1 pt

    Брр.. Я вижу 2 варианта понимания вашей задачи:

    1. у вас есть Elevation уровня и в соответствии с ним нужно переименовать уровни?
    2. у вас есть Elevation уровня в первом списке и некие элементы с базовой зависимостью от уровней этажа во 2м списке – и вы хотите раскидать список 2 в соответствии с их принадлежностью к списку 1 (я предлагал сделать это через фильтр по маске)
    3. или я вообще не правильно все понял?
    #4801 Score: 0
    Александр
    Участник

    Арсений, вы действительно не совсем правильно поняли задачу

    Если более детально описать задачу: сгенерировать имена видов по значениям нескольких параметров. Для планов я хочу, чтобы в имени вида отображалась отметка уровня с которым связан вид. Для этого я взял список уровней проекта и из них получил их отметки (список 1) и список планов (список 2), из которых получил список значений параметра “Связанный уровень” и сгруппировал их по этому параметру.

    Теперь нужно в списке 2 заменить значения связанных уровней на их отметки из списка 1.

    В принципе по примеру из моего прошлого поста все получилось, но есть небольшая странность поведения скрипта: значения не заменяются… не могу понять в чем может быть проблема

     

    #4802 Score: 0
    Арсений
    Участник
    1 pt

    А эти значения перед входом в нод String.Replace не нужно преобразовать в строки (String from Array)?

    #4803 Score: 0
    Александр
    Участник

    Пробовал, не помогает. Они и так строковые. Ведут себя они тоже странно. Если удалить из проекта план на отм -1,250 (последний в списке), то вид “Ростверк” который не заменялся до этого, нормально заменяется

    #4804 Score: 0
    Александр
    Участник

    Решил проблему чисткой списка видов. В нем были пустые подсписки

    #4805 Score: 0
    Арсений
    Участник
    1 pt

    уровней 13, а связанных уровней 7 – что тут не то. В связи с этим есть ощущение что строка “Технический этаж” в вашем случае заменилась на “+11,920”, А “длинное переплетение” в ноде stringreplace по моему не верно (из за разницы длины списков).

    возможно я и ошибаюсь..

    #4806 Score: 0
    Александр
    Участник

    Не для всех уровней проекта, созданы планы этажей. Поэтому уровней больше, чем планов. Переплетение действительно нужно подправить

    #4812 Score: 0
    IvanPanteleev
    Участник
    6 pts

    Всем привет!!!
    Подскажите, как можно получить из списка как на картинке, вот такой список

    {{1,0},{1,0},{1,0},{1,0,0,0}};?

     

Просмотр 15 сообщений - с 1 по 15 (из 16 всего)
  • Для ответа в этой теме необходимо авторизоваться.